The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

BSON::Double - BSON type wrapper for Double

VERSION

version v1.2.0

SYNOPSIS

    use BSON::Types ':all';

    my $bytes = bson_double( $number );

DESCRIPTION

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

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.

METHODS

TO_JSON

Returns a double, unless the value is 'Inf', '-Inf' or 'NaN' (which are illegal in JSON), in which case an exception is thrown.

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

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 <david@mongodb.com>

  • Stefan G. <minimalist@lavabit.com>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2016 by Stefan G. and MongoDB, Inc.

This is free software, licensed under:

  The Apache License, Version 2.0, January 2004