Christoph Reck wrote:
>
> Hi Geir,
>
> I would like to test the new VM code.
It was checked into CVS last weekend :)
> But I need a version with the
> fixed Map.put and the #set bang features (the current CVS version
> leaves a variable as is when it encoutners a NULL, then the
> application cannot check and uses wrong data; also I would like
> to avoid the logs when I know I'm using it in a possibly null
> returing manner).
The map.put is in there too (went in last night) and the set-bang is
something we don't have a solution for yet.
>
> I encountered strange behaviour (bugs) using interpolation and VM.
>
> * #set($foo = "$")##any string ending in a $ or # emits parser errors
> Workaround use the '$' form (which is not allways possible...).
Yes, I know what that is, and my next big parser project. If I get to
stay home tomorrow, I'll see if I can get started.
> * A #if($foo)#end also emits parser errors.
Another for my dance with Mr. Parser.
> * I would like to use the #macro feature as follows:
> #macro( call $foo )#if($foo)#**##end#end
> #macro( log $message )#call( $log.add($message) )#end
> and then
> #log("$date <Error> Some more text")
> which emits an Exception:
> Thu Jan 18 16:53:38 CET 2001 [error] Parser Exception: VM:log :
>org.apache.velocity.runtime.parser.ParseException: Encountered
> "<" at line 1, column 23.
That's fixed with new VM implementation.
[SNIP]
>
> I hope your new VM implementation fixes the latter one. The other two
> can be avoided with workarounds. I saw you took the vel.jar from the
> whiteboard.
Yes, the last problem should be taken care of.
Download the latest CVS, and you should be happy.
--
Geir Magnusson Jr. [EMAIL PROTECTED]
Velocity : it's not just a good idea. It should be the law.
http://jakarta.apache.org/velocity