logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Data::MessagePack::Stream - yet another messagepack streaming deserializer

Author

       Daisuke Murase <typester@cpan.org>

Description

       Data::MessagePack::Stream is streaming deserializer for MessagePack.

       This module is alternate for Data::MessagePack::Unpacker.  Unlike original unpacker, this module support
       internal buffer and it's possible to handle streaming data correctly.

Methods

new
           my $unpacker = Data::MessagePack::Stream->new;

       Create new stream unpacker.

   feed($data)
           $unpacker->feed($data);

       Push $data into unpacker's internal buffer.

   next
           my $bool = $unpacker->next;

       If parsable MessagePack packet is fed, return true.  You can get that parsed data by "data" method
       described below.

   data
           my $data = $unpacker->data;

       Return parsed perl object.

Name

       Data::MessagePack::Stream - yet another messagepack streaming deserializer

Synopsis

           use Data::Dumper;
           my $unpacker = Data::MessagePack::Stream->new;

           while (read($fh, my $buf, 1024)) {
               $unpacker->feed($buf);

               while ($unpacker->next) {
                   print Dumper($unpacker->data);
               }
           }

See Also