BSON::Double - BSON type wrapper for Double
Contents
Attributes
value
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.
Copyright And License
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
perl v5.40.1 2025-04-16 BSON::Double(3pm)
Description
This module provides a BSON type wrapper for a numeric value that would be represented in BSON as a
double.
Infinity And Nan
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
Methods
TO_JSON
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
<https://github.com/mongodb/specifications/blob/master/source/extended-json.rst> 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.
Name
BSON::Double - BSON type wrapper for Double
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.
Synopsis
use BSON::Types ':all';
my $bytes = bson_double( $number );
Version
version v1.12.2
