Lines Matching refs:Math
9 use Math::BigInt::Subclass;
10 use Math::BigFloat::Subclass;
11 use Math::BigFloat::BareSubclass;
12 use Math::BigInt;
13 use Math::BigFloat;
15 my $class = "Math::BigInt::Subclass";
16 my $LIB = "Math::BigInt::Calc";
18 # Check that a subclass is still considered a Math::BigInt
19 isa_ok($class->new(123), 'Math::BigInt');
21 # ditto for plain Math::BigInt
22 isa_ok(Math::BigInt->new(123), 'Math::BigInt');
24 # But Math::BigFloat objects aren't
25 ok(!Math::BigFloat->new(123)->isa('Math::BigInt'),
26 "A Math::BigFloat isn't a Math::BigInt");
29 # see what happens if we feed a Math::BigFloat into new()
30 my $x = Math::BigInt->new(Math::BigFloat->new(123));
31 is(ref($x), 'Math::BigInt', 'ref($x) = "Math::BigInt"');
32 isa_ok($x, 'Math::BigInt');
37 my $x = Math::BigInt->new(Math::BigFloat::Subclass->new(123));
38 is(ref($x), 'Math::BigInt', 'ref($x) = "Math::BigInt"');
39 isa_ok($x, 'Math::BigInt');
43 my $x = Math::BigFloat->new(Math::BigInt->new(123));
44 is(ref($x), 'Math::BigFloat', 'ref($x) = "Math::BigFloat"');
45 isa_ok($x, 'Math::BigFloat');
49 my $x = Math::BigFloat->new(Math::BigInt::Subclass->new(123));
50 is(ref($x), 'Math::BigFloat', 'ref($x) = "Math::BigFloat"');
51 isa_ok($x, 'Math::BigFloat');
55 my $x = Math::BigFloat->new(9999.99);
56 my $y = Math::BigFloat::BareSubclass->new(9999.99);
57 ok($x == $y, "Math::BigFloat parent == subclass");
58 ok($y == $x, "Math::BigFloat subclass == parent");