velocity-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sergiy Kovalchuk (JIRA)" <>
Subject [jira] Commented: (VELOCITY-692) have #if handle empty strings/arrays/collections/maps more conveniently
Date Fri, 13 Feb 2009 21:44:59 GMT


Sergiy Kovalchuk commented on VELOCITY-692:

>if someone wants to be specific about what falsiness they are checking on, they should
always be specific and do: 
>#if( $foo == $null )
>#if( $foo == false )
>#if( $foo.length() == 0 )
>#if( $foo.isEmpty() ) 

Yes, but if I understand it correctly if #if operator will check for emptiness, all those
expressions will be equal. You can't use #if( $foo == $null ) anymore because it will be the
same as #if( $foo.length() == 0 ) (if an object has length) and so on. 

That's why I thought about separated operator for checking for emptiness - so you still can
check for null or for length/false/empty specifically if you want using regular #if, and it
won't break backward compatibility. Also when a user calls operator named something like #ifEmpty
it is clear what he wants, and in this case reflection for empty/length/size methods won't
be unexpected.

Unless I don't get the point and you still will be able to check for nulls even with this
empty addition? ($null in Velocity is just a regular variable, not a special keyword, isn't

> have #if handle empty strings/arrays/collections/maps more conveniently
> -----------------------------------------------------------------------
>                 Key: VELOCITY-692
>                 URL:
>             Project: Velocity
>          Issue Type: New Feature
>          Components: Engine
>            Reporter: Nathan Bubna
>            Priority: Trivial
> An idea from the dev list:
> -------------------------------------------------------------------------------------------------
> On Sat, Feb 7, 2009 at 3:41 PM,  <> wrote:
> > Hello,
> > I wanted to share with you a few ideas I have about new simple
> > improvements for DisplayTools. I should be able to make patches for
> > them if you are interested.
> >
> > 1. Add new method
> >
> > isEmpty(object)
> >
> > that will return true if the object is null or empty (for strings it's
> > zero length; for collections, maps and arrays it's zero size). This
> > should help with  annoying null checks. (Probably a better place for
> > this method would be Engine, not Tools)
> yeah, not something for tools.  would be interesting to have the
> Uberspect pretend that every non-null reference has an isEmpty()
> method, or perhaps just add 0-length strings, empty collections, empty
> maps and 0-length arrays to the list of things that #if( $foo )
> considers false.
> -------------------------------------------------------------------------------------------------

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message