Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW
 
PerlMonks  

Re: Accessing name of tied variable in tie constructor

by daxim (Chaplain)
on Jul 10, 2013 at 13:25 UTC ( #1043470=note: print w/ replies, xml ) Need Help??


in reply to Accessing name of tied variable in tie constructor

No, not without the usual padwalking trickery.

But Tie::StdHash derived have an identity number (documented as argument named this) which you can use to differentiate between tied variables, see example. I guess that's your real intention.


Comment on Re: Accessing name of tied variable in tie constructor
Replies are listed 'Best First'.
Re^2: Accessing name of tied variable in tie constructor
by tobyink (Abbot) on Jul 10, 2013 at 15:04 UTC

    Even PadWalker and Devel::Caller can't help you - TIEHASH doesn't get passed a reference to the tied variable, so there's no chance of it being able to figure out the variable's name.

    Also, the argument this in the Tie::StdHash documentation isn't an identity number; it's a blessed hashref. (It's what most OO Perl code would refer to as $self.)

    package Cow { use Moo; has name => (is => 'lazy', default => sub { 'Mooington' }) } say Cow->new->name

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (10)
As of 2016-02-11 21:15 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How many photographs, souvenirs, artworks, trophies or other decorative objects are displayed in your home?





    Results (381 votes), past polls