[antlr-interest] template generation for dumb rules
Terence Parr
parrt at cs.usfca.edu
Tue Mar 25 07:59:00 PDT 2008
try
a : b -> {$b.st} | c -> {$c.st} ;
I'm waiting to see more of these patterns before I alter the behavior
or add a shorthand. That case is obvious but what about:
a : b c ;
now what to return? The "cat"?
Ter
On Mar 25, 2008, at 6:01 AM, Grzegorz Cieslewski wrote:
> I am in the similar situation. In my grammar I have about 100 rules
> like that. I have saved some time by defining all templates in
> separate file and creating template simple(a)::="<a>" and then
> invoking it multiple times whenever I have a "dumb" rule. If any one
> knows a better way of doing this I am all ears.
>
> Greg
>
> On Wed, Mar 19, 2008 at 10:28 AM, Philippe Faes
> <ph_reader at faes.net> wrote:
>> Dear ANTLR-gang,
>>
>> I'm writing an ANTLR stringtemplate generator, which translates a
>> tree to a
>> string template. My grammar has many rules like this:
>> a : b | c;
>> The generation rule that I want for these rules looks something like:
>> a: b -> template(b={$b.st}) "<b>"
>> | c -> template(c={$c.st}) "<c>";
>> In fact the stringtemplate just repeats whatever the underlying
>> rule would
>> return as stringtemplate.
>> These rules have very little extra value, but they require a lot
>> of typing,
>> and decrease the general readability of the grammar.
>> I was hoping to find a way of setting this "braindead"
>> stringtemplate rule
>> as a default. Is there any way somebody can save me a lot of time
>> typing
>> these rules?
>>
>> kind regards
>> Philippe
>>
>>
>
>
>
> --
> =====================================================
> Grzegorz Cieslewski
> Research Assistant
> High-performance Computing & Simulation (HCS) Research Laboratory
> University of Florida, Dept. of Electrical and Computer Engineering
> 330 Benton Hall, Gainesville, FL, 32611-6200
> Phone: (352) 392-9041
> Email: cieslewski at hcs.ufl.edu
> Web: www.hcs.ufl.edu
> =====================================================
More information about the antlr-interest
mailing list