The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

MongoDB::BSON - Tools for serializing and deserializing data in BSON form

VERSION

version v0.703.3

NAME

MongoDB::BSON - Encoding and decoding utilities (more to come)

ATTRIBUTES

looks_like_number

    $MongoDB::BSON::looks_like_number = 1;
    $collection->insert({age => "4"}); # stores 4 as an int

If this is set, the driver will be more aggressive about converting strings into numbers. Anything that Scalar::Util's looks_like_number would approve as a number will be sent to MongoDB as its numeric value.

Defaults to 0 (for backwards compatibility).

If you do not set this, you may be using strings more often than you intend to. See the MongoDB::DataTypes section for more info on the behavior of strings vs. numbers.

char

    $MongoDB::BSON::char = ":";
    $collection->query({"x" => {":gt" => 4}});

Can be used to set a character other than "$" to use for special operators.

Turn on/off UTF8 flag when return strings

    # turn off utf8 flag on strings
    $MongoDB::BSON::utf8_flag_on = 0;

Default is turn on, that compatible with version before 0.34.

If set to 0, will turn of utf8 flag on string attribute and return on bytes mode, meant same as :

    utf8::encode($str)

Currently MongoDB return string with utf8 flag, on character mode , some people wish to turn off utf8 flag and return string on byte mode, it maybe help to display "pretty" strings.

NOTE:

If you turn off utf8 flag, the string length will compute as bytes, and is_utf8 will return false.

Return boolean values as booleans instead of integers

    $MongoDB::BSON::use_boolean = 1

By default, booleans are deserialized as integers. If you would like them to be deserialized as "true" in boolean and "false" in boolean, set $MongoDB::BSON::use_boolean to 1.

Return binary data as instances of MongoDB::BSON::Binary instead of string refs.

    $MongoDB::BSON::use_binary = 1

For backwards compatibility, binary data is deserialized as a string ref. If you would like to have it deserialized as instances of MongoDB::BSON::Binary (to, say, preserve the subtype), set $MongoDB::BSON::use_binary to 1.

AUTHORS

  • Florian Ragwitz <rafl@debian.org>

  • Kristina Chodorow <kristina@mongodb.org>

  • Mike Friedman <friedo@mongodb.com>

  • David Golden <david.golden@mongodb.org>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2014 by MongoDB, Inc..

This is free software, licensed under:

  The Apache License, Version 2.0, January 2004