Lines Matching refs:isa

18 ok $a->isa("Bob");
53 ok $a->isa("Alice");
54 ok $a->isa("main::Alice"); # check that alternate class names work
56 ok(("main::Alice"->new)->isa("Alice"));
58 ok $a->isa("Bob");
59 ok $a->isa("main::Bob");
61 ok $a->isa("Female");
63 ok ! $a->isa("Female\0NOT REALLY!"), "->isa is nul-clean.";
65 ok $a->isa("Human");
67 ok ! $a->isa("Male");
69 ok ! $a->isa('Programmer');
71 ok $a->isa("HASH");
82 ok (!Cedric->isa('Programmer'));
84 ok (Cedric->isa('Human'));
88 ok (Cedric->isa('Programmer'));
95 ok $a->isa('Programmer');
96 ok $a->isa("Female");
100 ok (!Cedric->isa('Programmer'));
107 is UNIVERSAL::isa($vals[$p], $refs[$q]), ($p==$q or $p+$q==1);
142 is $subs, "can isa DOES VERSION";
144 is $subs, "DOES VERSION can isa";
147 ok $a->isa("UNIVERSAL");
149 ok ! UNIVERSAL::isa([], "UNIVERSAL");
153 ok UNIVERSAL::isa(Alice => "UNIVERSAL");
160 ok $a->isa("UNIVERSAL");
165 is $sub2, "can import isa DOES VERSION";
167 is $sub2, "DOES VERSION can import isa";
177 ok ! UNIVERSAL::isa("\xff\xff\xff\0", 'HASH');
180 # test isa() and can() on magic variables
182 ok $1->isa("Human");
188 ::ok $x->isa("Human");
193 # a second call to isa('UNIVERSAL') when @ISA is null failed due to caching
197 ok $x->isa('UNIVERSAL');
198 ok $x->isa('UNIVERSAL');
211 fresh_perl_is('$:; UNIVERSAL::isa(":","Unicode::String");print "ok"','ok');
225 ok( Bar->DOES( 'Bar' ), '... and should fall back to isa()' );
235 Bodine->isa('Pig');
236 *isa = \&UNIVERSAL::isa;
237 eval { isa({}, 'HASH') };
238 ::is($@, '', "*isa correctly found");
243 'DOES call error message says DOES, not isa' );
253 ok (splatt->isa('zlopp'));
254 ok (!splatt->isa('plop'));
256 # This should reset the ->isa lookup cache
259 ok (!splatt->isa('zlopp'));
260 ok (splatt->isa('plop'));
280 # Test: [perl #66112]: change @ISA inside sub isa
286 sub isa {
289 return $self->SUPER::isa(@_);
296 sub isa {
299 return $self->SUPER::isa(@_);
309 ok(RT66112::T1->isa('RT66112::C'), "modify \@ISA in isa (RT66112::T1 isa RT66112::C)");
314 ok(RT66112::T2->isa('RT66112::B'), "modify \@ISA in isa (RT66112::T2 isa RT66112::B)");
319 ok(RT66112::T3->isa('RT66112::A'), "modify \@ISA in isa (RT66112::T3 isa RT66112::A)") or require mro, diag "@{mro::get_linear_isa('RT66112::T3')}";
323 ok(RT66112::T4->isa('RT66112::E'), "modify \@ISA in isa (RT66112::T4 isa RT66112::E)");
327 ok(! RT66112::T5->isa('RT66112::D'), "modify \@ISA in isa (RT66112::T5 not isa RT66112::D)");
331 ok(RT66112::T6->isa('RT66112::A'), "modify \@ISA in isa (RT66112::T6 isa RT66112::A)");
339 ok(Undeclared->isa("UNIVERSAL"));
345 ok(UniversalIsaTest1->isa('UniversalParent'));
346 ok(UniversalIsaTest2->isa('UniversalParent'));