<div>&gt;def : ^(DEF name expr) -&gt; ^(DEF name $expr.value)<br>I tried some additional experiments.&nbsp; I don[&#39;t think you can access the attribute &#39;value&#39; in the context of a tree rewrite.</div>
<div>&nbsp;</div>
<div>I reviewed my own experiements with tree rewriting.&nbsp; I found one can only reference tokens and rules(which are trees). I think you&#39;ll need to approach your rewrite in a different direction.</div>
<div>&nbsp;</div>
<div>hth,</div>
<div>Bernardo<br></div>
<div class="gmail_quote">On Tue, Jul 1, 2008 at 2:45 PM, Bernardo Elayda &lt;<a href="mailto:belayda@gmail.com">belayda@gmail.com</a>&gt; wrote:<br>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">Hmmmm.....<br>try this:<br>def : ^(DEF name mylabel=expr) -&gt; ^(DEF name $mylabel.token.value)<br><br>Sometimes Antler 3.x has trouble figuring out where to get a value.&nbsp; In theory, I agree with your original code that $expr.value should have worked. Let me know if it still doesn&#39;t work.&nbsp; I&#39;ve run into this issue myself, but I don&#39;t have any of my grammars here.&nbsp; I&#39;ll have to check this later this evening.<br>
<br>regards,<br><font color="#888888">Bernardo</font> 
<div>
<div></div>
<div class="Wj3C7c"><br><br>
<div class="gmail_quote">On Tue, Jul 1, 2008 at 10:24 AM, Alvaro Egana &lt;<a href="mailto:alvarorama@gmail.com" target="_blank">alvarorama@gmail.com</a>&gt; wrote:<br>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0pt 0pt 0pt 0.8ex; BORDER-LEFT: rgb(204,204,204) 1px solid">Bernardo,<br><br>Thanks for yor quick answer. I did what you said but it didn&#39;t work. I<br>
get the same error (about the undefined rule &#39;value&#39;).<br><br>Alvaro<br><br>2008/7/1 Bernardo Elayda &lt;<a href="mailto:belayda@gmail.com" target="_blank">belayda@gmail.com</a>&gt;:<br>
<div>
<div></div>
<div>&gt; Hi!<br>&gt; Try this instead:<br>&gt;<br>&gt; def : ^(DEF name mylabel=expr) -&gt; ^(DEF name $mylabel.value)<br>&gt;<br>&gt; hth,<br>&gt; Bernardo Elayda<br>&gt;<br>&gt;<br>&gt; ----------------------------<br>
&gt; def : ^(DEF name expr)<br>&gt; &nbsp; &nbsp; &nbsp;;<br>&gt; name : &lt;&lt;some rules&gt;&gt;;<br>&gt;<br>&gt;<br>&gt; expr &nbsp;returns [String value]<br>&gt; &nbsp; &nbsp; &nbsp;: &lt;&lt;some rules&gt;&gt;<br>&gt; &nbsp; &nbsp; &nbsp;;<br>&gt;<br>&gt;<br>&gt; I&#39;ve been trying to do this rewrite:<br>
&gt;<br>&gt; def : ^(DEF name expr) -&gt; ^(DEF name $expr.value)<br>&gt;<br>&gt; (I&#39;m writing a name resolver ...)<br>&gt;<br>&gt;<br>&gt;<br>&gt; But antlr complains saying there is a reference to an undefined rule<br>
&gt; &#39;value&#39;.<br></div></div></blockquote></div><br></div></div></blockquote></div><br>