[stringtemplate-interest] [ST4 Beta-4] Retrieving version information

Terence Parr parrt at cs.usfca.edu
Tue Feb 15 15:14:27 PST 2011


Now that I think about it, the ctor for the groups don't actually try to load the imported groups. so we can always create the group, set the error manager, then tell it to do a load, right?

That said, I have a note in the todo list:

* should adaptors get imported from super group?

I kind of like the idea of knowing who the importer was. maybe the errors of all imported groups go to the error manager of the root importing template.

 does that say anything about adapters and renderers? In other words, should renderers in the root group be used by all templates in the imported groups? seems like it I guess.

 thanks for thinking of all this!

Ter

On Feb 11, 2011, at 3:06 AM, Udo Borkowski wrote:

> Hi Ter,
> 
> I agree this will only work if the version information (text and/or boolean flag) is really in sync with the version control system. Not sure how hard this is to implement.
> 
> Regarding the test for the version: I haven't thought of this yet, but it would definitely be useful. 
> 
> Udo
> 
> On 11.02.2011, at 00:55, Terence Parr wrote:
> 
>> Hi Udo,
>> 
>> Seems like the more common use case would be to test the version number and do something different to  avoidable or use a feature only if a particular version is available. but we can't test values in the template so it would have to be a Boolean set  for the various versions; might be hard to add one for every random version we make.
>> 
>> <if(v4_0b1)>...<endif>
>> 
>> Hmm... also I would have to figure out how to make ANT alter my software automatically to include the right version string; it would have to know about perforce version control and so on. setting this by hand would be a problem as it would get out of sync.
>> 
>> Ter
>> On Feb 7, 2011, at 6:25 AM, Udo Borkowski wrote:
>> 
>>> Hi,
>>> 
>>> what about providing "version information" to be used in a template? 
>>> 
>>> I got this idea because I was using an older version of the engine (Beta3 instead of Beta4) without noticing.
>>> 
>>> 
>>> One could then use this information e.g. to include a text like
>>> 
>>> 	"(Rendered with StringTemplate 4.0 Beta-4)"
>>> 
>>> into generated web pages etc.
>>> 
>>> 
>>> One way to achieve this without adding "build-in" attributes etc. could be extending the class ST.
>>> 
>>> E.g. add the following method to the class ST:
>>> 
>>> 	
>>> 	public String getVersionText() {
>>> 		return "StringTemplate 4.0 Beta-4";
>>> 	}
>>> 
>>> 
>>> Then one could use
>>> 
>>> 		(Rendered with <{ }.versionText>)
>>> 
>>> in a template to render
>>> 
>>> 		(Rendered with StringTemplate 4.0 Beta-4)
>>> 
>>> 
>>> Udo
>>> 
>>> 	
>>> 
>>> 
>>> _______________________________________________
>>> stringtemplate-interest mailing list
>>> stringtemplate-interest at antlr.org
>>> http://www.antlr.org/mailman/listinfo/stringtemplate-interest
>> 
>> _______________________________________________
>> stringtemplate-interest mailing list
>> stringtemplate-interest at antlr.org
>> http://www.antlr.org/mailman/listinfo/stringtemplate-interest
> 



More information about the stringtemplate-interest mailing list