[ Index ] |
PHP Cross Reference of Unnamed Project |
[Summary view] [Print] [Text view]
1 #!/usr/bin/perl -w 2 3 package Math::BigFloat::Trace; 4 5 require 5.005_02; 6 use strict; 7 8 use Exporter; 9 use Math::BigFloat; 10 use vars qw($VERSION @ISA $PACKAGE @EXPORT_OK 11 $accuracy $precision $round_mode $div_scale); 12 13 @ISA = qw(Exporter Math::BigFloat); 14 15 $VERSION = 0.01; 16 17 use overload; # inherit overload from BigFloat 18 19 # Globals 20 $accuracy = $precision = undef; 21 $round_mode = 'even'; 22 $div_scale = 40; 23 24 sub new 25 { 26 my $proto = shift; 27 my $class = ref($proto) || $proto; 28 29 my $value = shift; 30 my $a = $accuracy; $a = $_[0] if defined $_[0]; 31 my $p = $precision; $p = $_[1] if defined $_[1]; 32 my $self = Math::BigFloat->new($value,$a,$p,$round_mode); 33 34 # remember, downgrading may return a BigInt, so don't meddle with class 35 # bless $self,$class; 36 37 print "MBF new '$value' => '$self' (",ref($self),")"; 38 return $self; 39 } 40 41 sub import 42 { 43 print "MBF import ",join(' ',@_); 44 my $self = shift; 45 46 # we catch the constants, the rest goes go BigFloat 47 my @a = (); 48 foreach (@_) 49 { 50 push @a, $_ if $_ ne ':constant'; 51 } 52 overload::constant float => sub { $self->new(shift); }; 53 54 Math::BigFloat->import(@a); # need it for subclasses 55 # $self->export_to_level(1,$self,@_); # need this ? 56 } 57 58 1;
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Tue Mar 17 22:47:18 2015 | Cross-referenced by PHPXref 0.7.1 |