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!

Reply via email to