0
Fork 0
mirror of https://github.com/ninenines/cowboy.git synced 2025-07-15 04:30:25 +00:00

Improve typespecs

This commit is contained in:
Loïc Hoguin 2012-07-24 01:07:31 +02:00
parent f3c5881dd4
commit 76d6ed83ce
2 changed files with 7 additions and 5 deletions

View file

@ -222,7 +222,8 @@ headers(Req) ->
%% returned is used as a return value. %% returned is used as a return value.
%% @see parse_header/3 %% @see parse_header/3
-spec parse_header(cowboy_http:header(), #http_req{}) -spec parse_header(cowboy_http:header(), #http_req{})
-> {any(), #http_req{}} | {error, badarg}. -> {any(), #http_req{}} | {undefined, binary(), #http_req{}}
| {error, badarg}.
parse_header(Name, Req=#http_req{p_headers=PHeaders}) -> parse_header(Name, Req=#http_req{p_headers=PHeaders}) ->
case lists:keyfind(Name, 1, PHeaders) of case lists:keyfind(Name, 1, PHeaders) of
false -> parse_header(Name, Req, parse_header_default(Name)); false -> parse_header(Name, Req, parse_header_default(Name));
@ -239,7 +240,8 @@ parse_header_default(_Name) -> undefined.
%% %%
%% When the header is unknown, the value is returned directly without parsing. %% When the header is unknown, the value is returned directly without parsing.
-spec parse_header(cowboy_http:header(), #http_req{}, any()) -spec parse_header(cowboy_http:header(), #http_req{}, any())
-> {any(), #http_req{}} | {error, badarg}. -> {any(), #http_req{}} | {undefined, binary(), #http_req{}}
| {error, badarg}.
parse_header(Name, Req, Default) when Name =:= 'Accept' -> parse_header(Name, Req, Default) when Name =:= 'Accept' ->
parse_header(Name, Req, Default, parse_header(Name, Req, Default,
fun (Value) -> fun (Value) ->

View file

@ -28,16 +28,16 @@
%% Media type. %% Media type.
content_types_p = [] :: content_types_p = [] ::
[{{binary(), binary(), [{binary(), binary()}]}, atom()}], [{binary() | {binary(), binary(), [{binary(), binary()}]}, atom()}],
content_type_a :: undefined content_type_a :: undefined
| {{binary(), binary(), [{binary(), binary()}]}, atom()}, | {binary() | {binary(), binary(), [{binary(), binary()}]}, atom()},
%% Language. %% Language.
languages_p = [] :: [binary()], languages_p = [] :: [binary()],
language_a :: undefined | binary(), language_a :: undefined | binary(),
%% Charset. %% Charset.
charsets_p = [] :: [binary()], charsets_p = [] :: [{binary(), atom()}],
charset_a :: undefined | binary(), charset_a :: undefined | binary(),
%% Cached resource calls. %% Cached resource calls.