anchor.diff:  set_resp_body_fun(StreamLen, StreamFun, Req) ->
   	{ok, Req#http_req{resp_body={StreamLen, StreamFun}}}.
   
  -
   %% @doc Return whether the given header has been set for the response.
   -spec has_resp_header(cowboy_http:header(), #http_req{}) -> boolean().
   has_resp_header(Name, #http_req{resp_headers=RespHeaders}) ->
  
positive.code: 	Tokens = cowboy_http:nonempty_list(ReplyConn, fun cowboy_http:token/2),
  	cowboy_http:connection_to_atom(Tokens).
  
  -spec response_head(cowboy_http:status(), cowboy_http:headers(),
  	cowboy_http:headers(), cowboy_http:headers()) -> iolist().
  response_head(Status, Headers, RespHeaders, DefaultHeaders) ->
  	StatusLine = <<"HTTP/1.1 ", (status(Status))/binary, "\r\n">>,
  	Headers2 = [{header_to_binary(Key), Value} || {Key, Value} <- Headers],
  	Headers3 = merge_headers(
  		merge_headers(Headers2, RespHeaders),
  		DefaultHeaders),
  	Headers4 = [[Key, <<": ">>, Value, <<"\r\n">>]
  		|| {Key, Value} <- Headers3],
  	[StatusLine, Headers4, <<"\r\n">>].
  
  -spec merge_headers(cowboy_http:headers(), cowboy_http:headers())
  	-> cowboy_http:headers().
  
negative.code: 	{ok, Transport, Socket}.
  
  %% Internal.
  
  -spec response(cowboy_http:status(), cowboy_http:headers(),
  	cowboy_http:headers(), cowboy_http:headers(), #http_req{}) -> ok.
  response(Status, Headers, RespHeaders, DefaultHeaders, #http_req{
  		socket=Socket, transport=Transport, version=Version}) ->
  	FullHeaders = response_merge_headers(Headers, RespHeaders, DefaultHeaders),
  	%% @todo 'onresponse' hook here.
  	HTTPVer = cowboy_http:version_to_binary(Version),
  	StatusLine = << HTTPVer/binary, " ", (status(Status))/binary, "\r\n" >>,
  	HeaderLines = [[Key, <<": ">>, Value, <<"\r\n">>]
  		|| {Key, Value} <- FullHeaders],
  	Transport:send(Socket, [StatusLine, HeaderLines, <<"\r\n">>]).
  
  -spec response_connection(cowboy_http:headers(), keepalive | close)
  	-> keepalive | close.
  