BSON::Double - BSON type wrapper for Double
version v1.12.2
use BSON::Types ':all';
my $bytes = bson_double( $number );
This module provides a BSON type wrapper for a numeric value that
would be represented in BSON as a double.
A numeric scalar (or the special strings ``Inf'', ``-Inf'' or ``NaN''). This
will be coerced to Perl's numeric type. The default is 0.0.
Returns a double.
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
format, which represents it as a document as follows:
{"$numberDouble" : "42.0"}
If BSON_EXTJSON is false and the value is 'Inf', '-Inf' or 'NaN'
(which are illegal in regular JSON), then an exception is thrown.
Some Perls may not support converting ``Inf'' or ``NaN'' strings to their
double equivalent. They are available as functions from the POSIX
module, but as a lighter alternative to POSIX, the following functions are
available:
-
BSON::Double::pInf() – positive infinity
-
BSON::Double::nInf() – negative infinity
-
BSON::Double::NaN() – not-a-number
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.
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
|