Scroll to navigation

DR::Tarantool::MsgPack(3pm) User Contributed Perl Documentation DR::Tarantool::MsgPack(3pm)

NAME

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

SYNOPSIS

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

METHODS

msgpack($OBJECT)

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);
2018-11-02 perl v5.28.0