DOKK / manpages / debian 10 / libdr-tarantool-perl / DR::Tarantool::MsgPack.3pm.en
DR::Tarantool::MsgPack(3pm) User Contributed Perl Documentation DR::Tarantool::MsgPack(3pm)

DR::Tarantool::MsgPack - msgpack encoder/decoder.

    use DR::Tarantool::MsgPack 'msgpack', 'msgunpack', 'msgcheck';
    # encode object
    my $pkt = msgpack({ a => 'b' });
    # decode object
    my $object = msgunpack($pkt);
    # decode object with utf8-strings
    my $object = msgunpack($pkt, 1);
    # check if $string is valid msgpack
    $object = msgunpack($str, 1) if msgcheck($str);

Encode perl object (scalar, hash, array) to octets.

Decide octets to perl object. Return perl object and tail of input string.

If $UTF8 is true, msgunpack will decode utf8-strings.

Protocol supports "true" and "false" statements. msgunpack unpacks them to 1 and 0.

If You want to pack "true" You can use DR::Tarantool::MsgPack::Bool:

    use DR::Tarantool::MsgPack 'msgpack';
    my $to_pack = { a => DR::Tarantool::MsgPack::Bool->new(0) };
    my $pkt = msgpack($to_pack);
2018-11-02 perl v5.28.0