Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot
 
PerlMonks  

Re^3: blessed confusion

by chromatic (Archbishop)
on Sep 09, 2010 at 06:06 UTC ( [id://859469]=note: print w/replies, xml ) Need Help??


in reply to Re^2: blessed confusion
in thread blessed confusion

Am I missing something?

Inside Perl 5, a reference only has one slot to associate it with a class. You can replace that association by blessing the reference into a different class, but there's only ever one class associated with a reference.

I don't know what object system you're thinking of, but this is how Perl 5 has worked since the beginning. Test it and see:

package Grandkid; use parent 'Kid'; sub new { bless {}, shift } package Kid; use parent 'Parent'; package Parent; sub inherited_method { 'Yep, inherited!' } package main; use Test::More 'no_plan'; my $gkid = Grandkid->new(); isa_ok( $gkid, 'Grandkid' ); isa_ok( $gkid, 'Kid' ); isa_ok( $gkid, 'Parent' ); is( $gkid->inherited_method(), 'Yep, inherited!', 'method inherited fr +om grandparent' ); done_testing();

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://859469]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others rifling through the Monastery: (4)
As of 2024-03-19 03:28 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found