From bb4bd9ac96d5fde5e8183c9950d3642062347a45 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Sat, 15 Sep 2012 20:33:57 +0200 Subject: Add a cowboy_req:to_list/1 function Removes a lot of duplicate code when printing error messages. --- src/cowboy_req.erl | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/cowboy_req.erl') 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 -- cgit v1.2.3