phpman > man > BSON::Double(3pm)

Markdown | JSON | MCP    


BSON::Double - BSON type wrapper for Double


version v1.12.2


use BSON::Types ':all';

my $bytes = bsondouble( $number );


This module provides a BSON type wrapper for a numeric value that would be represented in BSON
as a double.


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.


TOJSON
Returns a double.

If the "BSONEXTJSON" environment variable is true and the "BSONEXTJSONRELAXED" 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 "BSONEXTJSON" 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.


*   David Golden <david@mongodb.com>

*   Stefan G. <minimalist@lavabit.com>


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

Generated by phpman v3.7.19-11-gb26f6fc Author: Che Dong Under GNU General Public License
2026-06-15 01:51 @2600:1f28:365:80b0:a1af:6b1b:3a81:4ad2
CrawledBy CCBot/2.0 (https://commoncrawl.org/faq/)
Valid XHTML 1.0 TransitionalValid CSS!