anchor.diff:          String    -> list_to_integer(String)
       end.
   
  +%% @private
  +stream_keys(Context=#ctx{bucket=Bucket,jiak_client=Client}) ->
  +    RiakClient = Client:riak_client(),
  +    {ok, ReqId} = RiakClient:stream_list_keys(Bucket),
  +    fun() -> stream_keys(ReqId, Context) end.
  +
  +%% @private
  +stream_keys(ReqId, Context) ->
  +    receive
  +        {ReqId, {keys, Keys}} ->
  +            {mochijson2:encode({struct, [{<<"keys">>, Keys}]}), fun() -> stream_keys(ReqId, Context) end};                                                                     
  +        {ReqId, done} -> {mochijson2:encode({struct, [{<<"keys">>, []}]}), done}
  +    end.
  +
   %%
   %% Tests
   %%
  
positive.code: %%            when GETting a bucket, set schema=false if you do not
  %%            want the schema included in the response
  %%</dd><dt> keys
  %%</dt><dd>   allowed values: true (default), false
  %%            when GETting a bucket, set keys=false if you do not want
  %%            the keylist included in the response
  %%</dd><dt> returnbody
  %%</dt><dd>   allowed values: true, false (default)
  %%            when PUTting or POSTing an object, set returnbody=true
  
negative.code:                             end;
                          undefined ->
                              {true,
                               wrq:append_to_response_body(
                                 "JSON object must contain either"
                                 " a 'schema' field or a 'bucket_mod' field",
                                 ReqData),
  