aboutsummaryrefslogtreecommitdiffstats
path: root/src/cowboy_req.erl
diff options
context:
space:
mode:
authorLoïc Hoguin <[email protected]>2012-09-15 20:33:57 +0200
committerLoïc Hoguin <[email protected]>2012-09-15 20:33:57 +0200
commitbb4bd9ac96d5fde5e8183c9950d3642062347a45 (patch)
tree1ca6ecc5575355c6c2f197ab3b53f1f90f0b2809 /src/cowboy_req.erl
parent9b5cbb5000e564352afbd762c4ab0406250f147f (diff)
downloadcowboy-bb4bd9ac96d5fde5e8183c9950d3642062347a45.tar.gz
cowboy-bb4bd9ac96d5fde5e8183c9950d3642062347a45.tar.bz2
cowboy-bb4bd9ac96d5fde5e8183c9950d3642062347a45.zip
Add a cowboy_req:to_list/1 function
Removes a lot of duplicate code when printing error messages.
Diffstat (limited to 'src/cowboy_req.erl')
-rw-r--r--src/cowboy_req.erl6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/cowboy_req.erl b/src/cowboy_req.erl
index e0804a6..c7bb64b 100644
--- a/src/cowboy_req.erl
+++ b/src/cowboy_req.erl
@@ -78,6 +78,7 @@
%% Misc API.
-export([compact/1]).
+-export([to_list/1]).
-export([transport/1]).
-include("http.hrl").
@@ -816,6 +817,11 @@ compact(Req) ->
bindings=undefined, headers=[],
p_headers=[], cookies=[]}.
+%% @doc Convert the Req object to a list of key/values.
+-spec to_list(req()) -> [{atom(), any()}].
+to_list(Req) ->
+ lists:zip(record_info(fields, http_req), tl(tuple_to_list(Req))).
+
%% @doc Return the transport module and socket associated with a request.
%%
%% This exposes the same socket interface used internally by the HTTP protocol