yes it's binary.
> $var1 ?= die "ERROR: \$var1 already set." : $var2;
Thanks for demonstrating your use case, it's even stranger than I expected! ;-)
die will not return a value - actually it won't return at all.
> Maybe you'll see more elegant way how to do such thing.
Yes with a properly named custom-function operating on an alias.
something like
sub init { die "ERROR: \$var already set." if defined $_[0]; $_[0] = $_[1]; } init $var1 => 'value1'; # pretty elegant, right? init $var2 => 'value2'; init $var3 => 'value3';
Please note the defined° , cause else wise you'd miss false values like 0 or "". (which renders your requirement for a new operator a bit useless)
Cheers Rolf
(addicted to the Perl Programming Language :)
Wikisyntax for the Monastery
FootballPerl is like chess, only without the dice
°) a shorter way would have been $_[0] // die 'ERROR: ...';
Off by one, it's the inverted case :)
In reply to Re^3: RFC: "assignary" operator ?= :
by LanX
in thread RFC: "assignary" operator ?= :
by richard.sharpe
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |