multi sub infix:<at> ($dsc, Code $deref) { $deref($dsc); } my %data = ( foo => [ { quux => 3 }, { bar => { baz => [ 1, 2, 3, 4 ] +}, }, ], ); my $dereferencer = { .<foo>[1]<bar><baz>[3] }; say %data at $dereferencer;
Works in Pugs. Since there doesn't seem to be any good documentation about macros yet, I don't know how to beautify the dereferencer construction syntax, but it ought to be trivial to make a macro that translates deref <foo><bar><baz>[1] to { .<foo><bar><baz>[1] }.
UPDATE: Fixed some blaring typos in the code. Thanks for noting it, blazar. (For some reason, you can't define a Hash in Pugs with
At least I get a syntax error with Pugs 6.2.13.)my Hash %foo = ( # something );
--
print "Just Another Perl Adept\n";
In reply to Re^3: [Perl 6] Any provision for a "dereferencing object"?
by vrk
in thread [Perl 6] Any provision for a "dereferencing object"?
by blazar
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |