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

Re: delete on tied variables

by ikegami (Pope)
on Jan 12, 2009 at 03:38 UTC ( #735596=note: print w/ replies, xml ) Need Help??


in reply to delete on tied variables

What is a hash slice and how is one written in Perl?

A means of selecting multiple elements for fetching or setting. An example would be @hash{ 'key1', 'key2', ... }. See perldata for details.

if a delete function in a Perl program specifies a slice, will the interpreter break it up into individual calls to DELETE?

Yes.

{ package Tester; use Tie::Hash qw(); our @ISA = 'Tie::StdHash'; sub DELETE { my $self = shift; print("DELETE @_\n"); $self->SUPER::DELETE(@_) } } { tie my %hash, 'Tester'; %hash = ( a => 1, b => 2, c => 3, d => 4, ); delete @hash{qw( b c )}; print(join(' ', keys %hash), "\n"); }
DELETE b DELETE c a d

If there are other pages that cover this subject, please tell me.

Update: Formatting changes. Switched from using array to using hash in DELETE test.


Comment on Re: delete on tied variables
Select or Download Code

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others scrutinizing the Monastery: (10)
As of 2014-07-30 07:33 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (229 votes), past polls