This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Math::BigRat has blead as its upstream
[perl5.git] / cpan / Math-BigRat / t / Math / BigRat / Test.pm
diff --git a/cpan/Math-BigRat/t/Math/BigRat/Test.pm b/cpan/Math-BigRat/t/Math/BigRat/Test.pm
deleted file mode 100644 (file)
index 630a843..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-package Math::BigRat::Test;
-
-require 5.005_02;
-use strict;
-
-use Exporter;
-use Math::BigRat;
-use Math::BigFloat;
-use vars qw($VERSION @ISA 
-            $accuracy $precision $round_mode $div_scale);
-
-@ISA = qw(Math::BigRat Exporter);
-$VERSION = 0.04;
-
-use overload;          # inherit overload from BigRat
-
-# Globals
-$accuracy = $precision = undef;
-$round_mode = 'even';
-$div_scale = 40;
-
-my $class = 'Math::BigRat::Test';
-
-#ub new
-#{
-#        my $proto  = shift;
-#        my $class  = ref($proto) || $proto;
-#
-#        my $value       = shift;
-#      my $a = $accuracy; $a = $_[0] if defined $_[0];
-#      my $p = $precision; $p = $_[1] if defined $_[1];
-#        # Store the floating point value
-#        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 
-  {
-  *fstr = \&bstr;
-  *fsstr = \&bsstr;
-  *objectify = \&Math::BigInt::objectify;
-  *AUTOLOAD = \&Math::BigRat::AUTOLOAD;
-  no strict 'refs';
-  foreach my $method ( qw/ div acmp floor ceil root sqrt log fac modpow modinv/)
-    {
-    *{'b' . $method} = \&{'Math::BigRat::b' . $method};
-    }
-  }
-
-sub fround
-  {
-  my ($x,$a) = @_;
-
-  #print "$a $accuracy $precision $round_mode\n";
-  Math::BigFloat->round_mode($round_mode);
-  Math::BigFloat->accuracy($a || $accuracy);
-  Math::BigFloat->precision(undef);
-  my $y = Math::BigFloat->new($x->bsstr(),undef,undef);
-  $class->new($y->fround($a));
-  }
-
-sub ffround
-  {
-  my ($x,$p) = @_;
-
-  Math::BigFloat->round_mode($round_mode);
-  Math::BigFloat->accuracy(undef);
-  Math::BigFloat->precision($p || $precision);
-  my $y = Math::BigFloat->new($x->bsstr(),undef,undef);
-  $class->new($y->ffround($p));
-  }
-
-sub bstr
-  {
-  # calculate a BigFloat compatible string output
-  my ($x) = @_;
-
-  $x = $class->new($x) unless ref $x;
-
-  if ($x->{sign} !~ /^[+-]$/)           # inf, NaN etc
-    {
-    my $s = $x->{sign}; $s =~ s/^\+//;  # +inf => inf
-    return $s;
-    }
-
-  my $s = ''; $s = $x->{sign} if $x->{sign} ne '+';     # +3 vs 3
-
-#  print " bstr \$x ", $accuracy || $x->{_a} || 'notset', " ", $precision || $x->{_p} || 'notset', "\n";
-  return $s.$x->{_n} if $x->{_d}->is_one(); 
-  my $output = Math::BigFloat->new($x->{_n})->bdiv($x->{_d});
-  local $Math::BigFloat::accuracy = $accuracy || $x->{_a};
-  local $Math::BigFloat::precision = $precision || $x->{_p};
-  $s.$output->bstr();
-  }
-
-sub numify
-  {
-  $_[0]->bsstr();
-  }
-
-sub bsstr
-  {
-  # calculate a BigFloat compatible string output
-  my ($x) = @_;
-
-  $x = $class->new($x) unless ref $x;
-
-  if ($x->{sign} !~ /^[+-]$/)           # inf, NaN etc
-    {
-    my $s = $x->{sign}; $s =~ s/^\+//;  # +inf => inf
-    return $s;
-    }
-
-  my $s = ''; $s = $x->{sign} if $x->{sign} ne '+';     # +3 vs 3
-
-  my $output = Math::BigFloat->new($x->{_n})->bdiv($x->{_d});
-  return $s.$output->bsstr();
-  }
-
-1;