1N/A#!/usr/bin/perl -w
1N/A
1N/Apackage Math::BigFloat::Subclass;
1N/A
1N/Arequire 5.005_02;
1N/Ause strict;
1N/A
1N/Ause Exporter;
1N/Ause Math::BigFloat(1.38);
1N/Ause vars qw($VERSION @ISA $PACKAGE
1N/A $accuracy $precision $round_mode $div_scale);
1N/A
1N/A@ISA = qw(Exporter Math::BigFloat);
1N/A
1N/A$VERSION = 0.04;
1N/A
1N/Ause overload; # inherit overload from BigInt
1N/A
1N/A# Globals
1N/A$accuracy = $precision = undef;
1N/A$round_mode = 'even';
1N/A$div_scale = 40;
1N/A
1N/Asub new
1N/A{
1N/A my $proto = shift;
1N/A my $class = ref($proto) || $proto;
1N/A
1N/A my $value = shift;
1N/A my $a = $accuracy; $a = $_[0] if defined $_[0];
1N/A my $p = $precision; $p = $_[1] if defined $_[1];
1N/A # Store the floating point value
1N/A my $self = Math::BigFloat->new($value,$a,$p,$round_mode);
1N/A bless $self, $class;
1N/A $self->{'_custom'} = 1; # make sure this never goes away
1N/A return $self;
1N/A}
1N/A
1N/ABEGIN
1N/A {
1N/A *objectify = \&Math::BigInt::objectify;
1N/A }
1N/A
1N/A1;