[antlr-interest] IllegalArgumentException: Can't find template wildcardTrack.st

Matthieu Riou matthieu at offthelip.org
Fri Oct 19 22:39:19 PDT 2007


Hi,

I have a rule in my grammar that must accept pretty much anything inside its
body. The idea is to get that block of code and delegate to some interpreter
external to the main language (allowing the inclusion of Javascript or Ruby
code for example).

The rule is the following (I know, this probably won't work just like this
especially if the function body has curly braces but it's just a start):

function:    'function' f=ID '(' ID? (',' ID)* ')' '{' (.*) '}' ->
^(FUNCTION $f);

Anytime I provide a rewrite rule (whatever it is) I get the following
exception:

error(10):  internal error:
/home/mriou/dev/projects/ode/simpel/src/main/antlr/org/apache/ode/simpel/antlr/SimPEL.g
: java.lang.IllegalArgumentException: Can't find template wildcardTrack.st
org.antlr.stringtemplate.StringTemplateGroup.lookupTemplate(Unknown Source)
org.antlr.stringtemplate.StringTemplateGroup.getInstanceOf(Unknown Source)
org.antlr.stringtemplate.StringTemplateGroup.getInstanceOf(Unknown Source)
org.antlr.stringtemplate.StringTemplateGroup.lookupTemplate(Unknown Source)
org.antlr.stringtemplate.StringTemplateGroup.getInstanceOf(Unknown Source)
org.antlr.stringtemplate.StringTemplateGroup.getInstanceOf(Unknown Source)
org.antlr.codegen.CodeGenTreeWalker.getTokenElementST(CodeGenTreeWalker.java
:160)
org.antlr.codegen.CodeGenTreeWalker.getWildcardST(CodeGenTreeWalker.java
:113)
org.antlr.codegen.CodeGenTreeWalker.atom(CodeGenTreeWalker.java:2034)
org.antlr.codegen.CodeGenTreeWalker.element(CodeGenTreeWalker.java:1641)
org.antlr.codegen.CodeGenTreeWalker.alternative(CodeGenTreeWalker.java:1252)
org.antlr.codegen.CodeGenTreeWalker.block(CodeGenTreeWalker.java:1037)
org.antlr.codegen.CodeGenTreeWalker.ebnf(CodeGenTreeWalker.java:1804)
org.antlr.codegen.CodeGenTreeWalker.element(CodeGenTreeWalker.java:1637)
org.antlr.codegen.CodeGenTreeWalker.alternative(CodeGenTreeWalker.java:1252)
org.antlr.codegen.CodeGenTreeWalker.block(CodeGenTreeWalker.java:1037)
org.antlr.codegen.CodeGenTreeWalker.rule(CodeGenTreeWalker.java:753)
org.antlr.codegen.CodeGenTreeWalker.rules(CodeGenTreeWalker.java:544)
org.antlr.codegen.CodeGenTreeWalker.grammarSpec(CodeGenTreeWalker.java:486)
org.antlr.codegen.CodeGenTreeWalker.grammar(CodeGenTreeWalker.java:333)
org.antlr.codegen.CodeGenerator.genRecognizer(CodeGenerator.java:406)
org.antlr.Tool.processGrammar(Tool.java:347)
org.antlr.Tool.process(Tool.java:268)

Any idea?

Thanks!
Matthieu
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.antlr.org/pipermail/antlr-interest/attachments/20071019/2737d60b/attachment.html 


More information about the antlr-interest mailing list