DR::Tarantool::MsgPack(3) 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.

msgunpack($OCTETS[, $UTF8])

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

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

true and false

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);