NAME

BSON::Int64 - BSON type wrapper for Int64

VERSION

version v1.12.2

SYNOPSIS

    use BSON::Types ':all';
    bson_int64( $number );

DESCRIPTION

This module provides a BSON type wrapper for a numeric value that would be represented in BSON as a 64-bit integer.
If the value won't fit in a 64-bit integer, an error will be thrown.
On a Perl without 64-bit integer support, the value must be a Math::BigInt object.

ATTRIBUTES

value

A numeric scalar. It will be coerced to an integer. The default is 0.

METHODS

TO_JSON

On a 64-bit perl, returns the value as an integer. On a 32-bit Perl, it will be returned as a Math::BigInt object, which will fail to serialize unless a "TO_JSON" method is defined for that or in package "universal".
If the "BSON_EXTJSON" environment variable is true and the "BSON_EXTJSON_RELAXED" environment variable is false, returns a hashref compatible with MongoDB's extended JSON <https://github.com/mongodb/specifications/blob/master/source/extended-json.rst> format, which represents it as a document as follows:
    {"$numberLong" : "223372036854775807"}

OVERLOADING

The numification operator, "0+" is overloaded to return the "value", the full "minimal set" of overloaded operations is provided (per overload documentation) and fallback overloading is enabled.

AUTHORS

David Golden <[email protected]>
Stefan G. <[email protected]>
This software is Copyright (c) 2020 by Stefan G. and MongoDB, Inc.
This is free software, licensed under:
  The Apache License, Version 2.0, January 2004