Since I reckon I was the one who suggesting $!foo to start with, here's
my rational of how this should work.
! applies to the operator it's glued to. $!foo means that if something
goes wonky during the deref of 'foo', then don't complain.
So, I'd suggest, for applying ! to a #set might actually end up
being
#!set ($foo = $splarg)
So, if something goes wonky during the #set, don't complain/log.
Likewise, something like
#!foreach ( $foo in $bar)
wouldn't complain if you can't grab an iterator() from $foo.
Just my $0.02
-bob
> > So do we want:
> >
> > 1) Status quo : don't do anything and use the logging switch? Christoph
> > has a point that it isn't enough.
> >
> > 2) Make it :
> > #set ($foo = $!splarg )
> > as Christoph suggests
> >
> > 3) Make it :
> >
> > #set ( $!foo = $splarg )
> >
> > because you are saying don't log if the assignment to $foo is null
> >
> > 4) something else?
> >
> > geir
>
> I *knew* this $! stuff would get more complicated!