use strict;
use Exporter;
-use Math::BigFloat(1.23);
+use Math::BigFloat(1.38);
use vars qw($VERSION @ISA $PACKAGE
$accuracy $precision $round_mode $div_scale);
@ISA = qw(Exporter Math::BigFloat);
-$VERSION = 0.01;
+$VERSION = 0.04;
+
+use overload; # inherit overload from BigInt
# Globals
$accuracy = $precision = undef;
my $class = ref($proto) || $proto;
my $value = shift;
- # Set to 0 if not provided, but don't use || (this would trigger for
- # a passed objects to see if they are zero)
- $value = 0 if !defined $value;
-
+ my $a = $accuracy; $a = $_[0] if defined $_[0];
+ my $p = $precision; $p = $_[1] if defined $_[1];
# Store the floating point value
- my $self = bless Math::BigFloat->new($value), $class;
+ my $self = Math::BigFloat->new($value,$a,$p,$round_mode);
+ bless $self, $class;
$self->{'_custom'} = 1; # make sure this never goes away
return $self;
}
+BEGIN
+ {
+ *objectify = \&Math::BigInt::objectify;
+ }
+
1;