Streaming rpc

Here it is, the streaming RPC changelist!

I spent a long time cleaning it up into as few independent changelists as possible, and I hope it's readable for you.

Oh!  Sorry I didn't reply, but this was already fixed a different way.
 good catch!!

On Mon, Dec 8, 2014 at 6:48 PM, ximinez <notifications@github.com> wrote:

> In src/ripple/rpc/impl/Yield.cpp:
>
> > +//==============================================================================
> > +
> > +#include <ripple/rpc/Yield.h>
> > +#include <ripple/rpc/impl/TestOutputSuite.h>
> > +
> > +namespace ripple {
> > +namespace RPC {
> > +
> > +Output chunkedYieldingOutput (
> > +    Output const& output, Yield const& yield, std::size_t chunkSize)
> > +{
> > +    auto count = std::make_shared <std::size_t> (0);
> > +    return [chunkSize, count, output, yield] (boost::string_ref const& bytes)
> > +    {
> > +        if (*count > chunkSize)
> > +            yield();
>
> count never resets, so once it passes chunkSize, we will yield on every
> subsequent call.
>
> To demonstrate, break out("there "); in Coroutine.test.cpp into 7 single
> character calls to out.
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/ripple/rippled/pull/750/files#r21497049>.
>