logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

BSON::Decimal128 - BSON type wrapper for Decimal128

Attributes

value
       The Decimal128 value represented as string.  If not provided, it will be generated from the "bytes"
       attribute on demand.

   bytes
       The Decimal128 value represented in Binary Integer Decimal
       <https://en.wikipedia.org/wiki/Binary_Integer_Decimal> (BID) format.  If not provided, it will be
       generated from the "value" attribute on demand.

Authors

       •   David Golden <david@mongodb.com>

       •   Stefan G. <minimalist@lavabit.com>

Description

       This module provides a BSON type wrapper for Decimal128 values.

       It may be initialized with either a numeric value in string form, or with a binary Decimal128
       representation (16 bytes), but not both.

       Initialization from a string will throw an error if the string cannot be parsed as a Decimal128 or if the
       resulting number would not fit into 128 bits.  If required, clamping or exact rounding will be applied to
       try to fit the value into 128 bits.

Methods

TO_JSON
       Returns the value as a string.

       If the "BSON_EXTJSON" option is true, it will instead be 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:

           {"$numberDecimal" : "2.23372036854775807E+57"}

Name

       BSON::Decimal128 - BSON type wrapper for Decimal128

Overloading

       The stringification operator ("") is overloaded to return a (normalized) string representation. Fallback
       overloading is enabled.

Synopsis

           use BSON::Types ':all';

           # string representation
           $decimal = bson_decimal128( "1.23456789E+1000" );

           # binary representation in BID format
           $decimal = BSON::Decimal128->new( bytes => $bid )

Version

       version v1.12.2

See Also