Cross Reference: Subclass.pm
xref
: /
osnet-11
/
usr
/
src
/
cmd
/
perl
/
5.8.4
/
distrib
/
t
/
lib
/
Math
/
BigFloat
/
Subclass.pm
Home
History
Annotate
Line#
Navigate
Download
Search
only in
./
1
N/A
#!/
usr
/
bin
/
perl
-w
1
N/A
1
N/A
package
Math
::
BigFloat
::
Subclass
;
1
N/A
1
N/A
require
5.005
_02
;
1
N/A
use
strict
;
1
N/A
1
N/A
use
Exporter
;
1
N/A
use
Math
::
BigFloat
(
1.38
);
1
N/A
use
vars
qw
($
VERSION
@
ISA
$
PACKAGE
1
N/A
$
accuracy
$
precision
$
round_mode
$
div_scale
);
1
N/A
1
N/A
@
ISA
=
qw
(
Exporter
Math
::
BigFloat
);
1
N/A
1
N/A
$
VERSION
=
0.04
;
1
N/A
1
N/A
use
overload
;
# inherit overload from BigInt
1
N/A
1
N/A
# Globals
1
N/A
$
accuracy
= $
precision
=
undef
;
1
N/A
$
round_mode
=
'even'
;
1
N/A
$
div_scale
=
40
;
1
N/A
1
N/A
sub
new
1
N/A
{
1
N/A
my
$
proto
=
shift
;
1
N/A
my
$
class
=
ref
($
proto
) || $
proto
;
1
N/A
1
N/A
my
$
value
=
shift
;
1
N/A
my
$a = $
accuracy
; $a = $_[
0
]
if
defined
$_[
0
];
1
N/A
my
$p = $
precision
; $p = $_[
1
]
if
defined
$_[
1
];
1
N/A
# Store the floating point value
1
N/A
my
$
self
=
Math
::
BigFloat
->
new
($
value
,$a,$p,$
round_mode
);
1
N/A
bless
$
self
, $
class
;
1
N/A
$
self
->{
'_custom'
} =
1
;
# make sure this never goes away
1
N/A
return
$
self
;
1
N/A
}
1
N/A
1
N/A
BEGIN
1
N/A
{
1
N/A
*
objectify
= \&
Math
::
BigInt
::
objectify
;
1
N/A
}
1
N/A
1
N/A
1
;