<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
<title>SimpleNode xref</title>
<link type="text/css" rel="stylesheet" href="../../../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../../../apidocs/org/apache/velocity/runtime/parser/node/SimpleNode.html">View Javadoc</a></div><pre>

<a name="1" href="#1">1</a>   <strong class="jxr_keyword">package</strong> org.apache.velocity.runtime.parser.node;
<a name="2" href="#2">2</a>   
<a name="3" href="#3">3</a>   <em class="jxr_comment">/*</em>
<a name="4" href="#4">4</a>   <em class="jxr_comment"> * Licensed to the Apache Software Foundation (ASF) under one</em>
<a name="5" href="#5">5</a>   <em class="jxr_comment"> * or more contributor license agreements.  See the NOTICE file</em>
<a name="6" href="#6">6</a>   <em class="jxr_comment"> * distributed with this work for additional information</em>
<a name="7" href="#7">7</a>   <em class="jxr_comment"> * regarding copyright ownership.  The ASF licenses this file</em>
<a name="8" href="#8">8</a>   <em class="jxr_comment"> * to you under the Apache License, Version 2.0 (the</em>
<a name="9" href="#9">9</a>   <em class="jxr_comment"> * "License"); you may not use this file except in compliance</em>
<a name="10" href="#10">10</a>  <em class="jxr_comment"> * with the License.  You may obtain a copy of the License at</em>
<a name="11" href="#11">11</a>  <em class="jxr_comment"> *</em>
<a name="12" href="#12">12</a>  <em class="jxr_comment"> *   <a href="http://www.apache.org/licenses/LICENSE-2.0" target="alexandria_uri">http://www.apache.org/licenses/LICENSE-2.0</a></em>
<a name="13" href="#13">13</a>  <em class="jxr_comment"> *</em>
<a name="14" href="#14">14</a>  <em class="jxr_comment"> * Unless required by applicable law or agreed to in writing,</em>
<a name="15" href="#15">15</a>  <em class="jxr_comment"> * software distributed under the License is distributed on an</em>
<a name="16" href="#16">16</a>  <em class="jxr_comment"> * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</em>
<a name="17" href="#17">17</a>  <em class="jxr_comment"> * KIND, either express or implied.  See the License for the</em>
<a name="18" href="#18">18</a>  <em class="jxr_comment"> * specific language governing permissions and limitations</em>
<a name="19" href="#19">19</a>  <em class="jxr_comment"> * under the License.    </em>
<a name="20" href="#20">20</a>  <em class="jxr_comment"> */</em>
<a name="21" href="#21">21</a>  
<a name="22" href="#22">22</a>  <strong class="jxr_keyword">import</strong> java.io.IOException;
<a name="23" href="#23">23</a>  <strong class="jxr_keyword">import</strong> java.io.Writer;
<a name="24" href="#24">24</a>  
<a name="25" href="#25">25</a>  <strong class="jxr_keyword">import</strong> org.apache.commons.lang.builder.ToStringBuilder;
<a name="26" href="#26">26</a>  <strong class="jxr_keyword">import</strong> org.apache.velocity.context.InternalContextAdapter;
<a name="27" href="#27">27</a>  <strong class="jxr_keyword">import</strong> org.apache.velocity.exception.MethodInvocationException;
<a name="28" href="#28">28</a>  <strong class="jxr_keyword">import</strong> org.apache.velocity.exception.ParseErrorException;
<a name="29" href="#29">29</a>  <strong class="jxr_keyword">import</strong> org.apache.velocity.exception.ResourceNotFoundException;
<a name="30" href="#30">30</a>  <strong class="jxr_keyword">import</strong> org.apache.velocity.exception.TemplateInitException;
<a name="31" href="#31">31</a>  <strong class="jxr_keyword">import</strong> org.apache.velocity.runtime.RuntimeServices;
<a name="32" href="#32">32</a>  <strong class="jxr_keyword">import</strong> org.apache.velocity.runtime.log.Log;
<a name="33" href="#33">33</a>  <strong class="jxr_keyword">import</strong> org.apache.velocity.runtime.parser.Parser;
<a name="34" href="#34">34</a>  <strong class="jxr_keyword">import</strong> org.apache.velocity.runtime.parser.ParserVisitor;
<a name="35" href="#35">35</a>  <strong class="jxr_keyword">import</strong> org.apache.velocity.runtime.parser.Token;
<a name="36" href="#36">36</a>  
<a name="37" href="#37">37</a>  <em class="jxr_javadoccomment">/**</em>
<a name="38" href="#38">38</a>  <em class="jxr_javadoccomment"> *</em>
<a name="39" href="#39">39</a>  <em class="jxr_javadoccomment"> */</em>
<a name="40" href="#40">40</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../../../org/apache/velocity/runtime/parser/node/SimpleNode.html">SimpleNode</a> implements <a href="../../../../../../org/apache/velocity/runtime/parser/node/Node.html">Node</a>
<a name="41" href="#41">41</a>  {
<a name="42" href="#42">42</a>      <em class="jxr_javadoccomment">/**</em><em class="jxr_javadoccomment"> */</em>
<a name="43" href="#43">43</a>      <strong class="jxr_keyword">protected</strong> <a href="../../../../../../org/apache/velocity/runtime/RuntimeServices.html">RuntimeServices</a> rsvc = <strong class="jxr_keyword">null</strong>;
<a name="44" href="#44">44</a>  
<a name="45" href="#45">45</a>      <em class="jxr_javadoccomment">/**</em><em class="jxr_javadoccomment"> */</em>
<a name="46" href="#46">46</a>      <strong class="jxr_keyword">protected</strong> <a href="../../../../../../org/apache/velocity/runtime/log/Log.html">Log</a> log = <strong class="jxr_keyword">null</strong>;
<a name="47" href="#47">47</a>  
<a name="48" href="#48">48</a>      <em class="jxr_javadoccomment">/**</em><em class="jxr_javadoccomment"> */</em>
<a name="49" href="#49">49</a>      <strong class="jxr_keyword">protected</strong> <a href="../../../../../../org/apache/velocity/runtime/parser/node/Node.html">Node</a> parent;
<a name="50" href="#50">50</a>  
<a name="51" href="#51">51</a>      <em class="jxr_javadoccomment">/**</em><em class="jxr_javadoccomment"> */</em>
<a name="52" href="#52">52</a>      <strong class="jxr_keyword">protected</strong> <a href="../../../../../../org/apache/velocity/runtime/parser/node/Node.html">Node</a>[] children;
<a name="53" href="#53">53</a>  
<a name="54" href="#54">54</a>      <em class="jxr_javadoccomment">/**</em><em class="jxr_javadoccomment"> */</em>
<a name="55" href="#55">55</a>      <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">int</strong> id;
<a name="56" href="#56">56</a>  
<a name="57" href="#57">57</a>      <em class="jxr_javadoccomment">/**</em><em class="jxr_javadoccomment"> */</em>
<a name="58" href="#58">58</a>      <strong class="jxr_keyword">protected</strong> <a href="../../../../../../org/apache/velocity/runtime/parser/Parser.html">Parser</a> parser;
<a name="59" href="#59">59</a>  
<a name="60" href="#60">60</a>      <em class="jxr_javadoccomment">/**</em><em class="jxr_javadoccomment"> */</em>
<a name="61" href="#61">61</a>      <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">int</strong> info; <em class="jxr_comment">// added</em>
<a name="62" href="#62">62</a>  
<a name="63" href="#63">63</a>      <em class="jxr_javadoccomment">/**</em><em class="jxr_javadoccomment"> */</em>
<a name="64" href="#64">64</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> state;
<a name="65" href="#65">65</a>  
<a name="66" href="#66">66</a>      <em class="jxr_javadoccomment">/**</em><em class="jxr_javadoccomment"> */</em>
<a name="67" href="#67">67</a>      <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">boolean</strong> invalid = false;
<a name="68" href="#68">68</a>  
<a name="69" href="#69">69</a>      <em class="jxr_javadoccomment">/**</em><em class="jxr_javadoccomment"> */</em>
<a name="70" href="#70">70</a>      <strong class="jxr_keyword">protected</strong> <a href="../../../../../../org/apache/velocity/runtime/parser/Token.html">Token</a> first;
<a name="71" href="#71">71</a>  
<a name="72" href="#72">72</a>      <em class="jxr_javadoccomment">/**</em><em class="jxr_javadoccomment"> */</em>
<a name="73" href="#73">73</a>      <strong class="jxr_keyword">protected</strong> <a href="../../../../../../org/apache/velocity/runtime/parser/Token.html">Token</a> last;
<a name="74" href="#74">74</a>  
<a name="75" href="#75">75</a>      <em class="jxr_javadoccomment">/**</em>
<a name="76" href="#76">76</a>  <em class="jxr_javadoccomment">     * @param i</em>
<a name="77" href="#77">77</a>  <em class="jxr_javadoccomment">     */</em>
<a name="78" href="#78">78</a>      <strong class="jxr_keyword">public</strong> <a href="../../../../../../org/apache/velocity/runtime/parser/node/SimpleNode.html">SimpleNode</a>(<strong class="jxr_keyword">int</strong> i)
<a name="79" href="#79">79</a>      {
<a name="80" href="#80">80</a>          id = i;
<a name="81" href="#81">81</a>      }
<a name="82" href="#82">82</a>  
<a name="83" href="#83">83</a>      <em class="jxr_javadoccomment">/**</em>
<a name="84" href="#84">84</a>  <em class="jxr_javadoccomment">     * @param p</em>
<a name="85" href="#85">85</a>  <em class="jxr_javadoccomment">     * @param i</em>
<a name="86" href="#86">86</a>  <em class="jxr_javadoccomment">     */</em>
<a name="87" href="#87">87</a>      <strong class="jxr_keyword">public</strong> <a href="../../../../../../org/apache/velocity/runtime/parser/node/SimpleNode.html">SimpleNode</a>(<a href="../../../../../../org/apache/velocity/runtime/parser/Parser.html">Parser</a> p, <strong class="jxr_keyword">int</strong> i)
<a name="88" href="#88">88</a>      {
<a name="89" href="#89">89</a>          <strong class="jxr_keyword">this</strong>(i);
<a name="90" href="#90">90</a>          parser = p;
<a name="91" href="#91">91</a>      }
<a name="92" href="#92">92</a>  
<a name="93" href="#93">93</a>      <em class="jxr_javadoccomment">/**</em>
<a name="94" href="#94">94</a>  <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#jjtOpen()</em>
<a name="95" href="#95">95</a>  <em class="jxr_javadoccomment">     */</em>
<a name="96" href="#96">96</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> jjtOpen()
<a name="97" href="#97">97</a>      {
<a name="98" href="#98">98</a>          first = parser.getToken(1); <em class="jxr_comment">// added</em>
<a name="99" href="#99">99</a>      }
<a name="100" href="#100">100</a> 
<a name="101" href="#101">101</a>     <em class="jxr_javadoccomment">/**</em>
<a name="102" href="#102">102</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#jjtClose()</em>
<a name="103" href="#103">103</a> <em class="jxr_javadoccomment">     */</em>
<a name="104" href="#104">104</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> jjtClose()
<a name="105" href="#105">105</a>     {
<a name="106" href="#106">106</a>         last = parser.getToken(0); <em class="jxr_comment">// added</em>
<a name="107" href="#107">107</a>     }
<a name="108" href="#108">108</a> 
<a name="109" href="#109">109</a>     <em class="jxr_javadoccomment">/**</em>
<a name="110" href="#110">110</a> <em class="jxr_javadoccomment">     * @param t</em>
<a name="111" href="#111">111</a> <em class="jxr_javadoccomment">     */</em>
<a name="112" href="#112">112</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> setFirstToken(<a href="../../../../../../org/apache/velocity/runtime/parser/Token.html">Token</a> t)
<a name="113" href="#113">113</a>     {
<a name="114" href="#114">114</a>         <strong class="jxr_keyword">this</strong>.first = t;
<a name="115" href="#115">115</a>     }
<a name="116" href="#116">116</a> 
<a name="117" href="#117">117</a>     <em class="jxr_javadoccomment">/**</em>
<a name="118" href="#118">118</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#getFirstToken()</em>
<a name="119" href="#119">119</a> <em class="jxr_javadoccomment">     */</em>
<a name="120" href="#120">120</a>     <strong class="jxr_keyword">public</strong> <a href="../../../../../../org/apache/velocity/runtime/parser/Token.html">Token</a> getFirstToken()
<a name="121" href="#121">121</a>     {
<a name="122" href="#122">122</a>         <strong class="jxr_keyword">return</strong> first;
<a name="123" href="#123">123</a>     }
<a name="124" href="#124">124</a> 
<a name="125" href="#125">125</a>     <em class="jxr_javadoccomment">/**</em>
<a name="126" href="#126">126</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#getLastToken()</em>
<a name="127" href="#127">127</a> <em class="jxr_javadoccomment">     */</em>
<a name="128" href="#128">128</a>     <strong class="jxr_keyword">public</strong> <a href="../../../../../../org/apache/velocity/runtime/parser/Token.html">Token</a> getLastToken()
<a name="129" href="#129">129</a>     {
<a name="130" href="#130">130</a>         <strong class="jxr_keyword">return</strong> last;
<a name="131" href="#131">131</a>     }
<a name="132" href="#132">132</a> 
<a name="133" href="#133">133</a>     <em class="jxr_javadoccomment">/**</em>
<a name="134" href="#134">134</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#jjtSetParent(org.apache.velocity.runtime.parser.node.Node)</em>
<a name="135" href="#135">135</a> <em class="jxr_javadoccomment">     */</em>
<a name="136" href="#136">136</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> jjtSetParent(<a href="../../../../../../org/apache/velocity/runtime/parser/node/Node.html">Node</a> n)
<a name="137" href="#137">137</a>     {
<a name="138" href="#138">138</a>         parent = n;
<a name="139" href="#139">139</a>     }
<a name="140" href="#140">140</a> 
<a name="141" href="#141">141</a>     <em class="jxr_javadoccomment">/**</em>
<a name="142" href="#142">142</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#jjtGetParent()</em>
<a name="143" href="#143">143</a> <em class="jxr_javadoccomment">     */</em>
<a name="144" href="#144">144</a>     <strong class="jxr_keyword">public</strong> <a href="../../../../../../org/apache/velocity/runtime/parser/node/Node.html">Node</a> jjtGetParent()
<a name="145" href="#145">145</a>     {
<a name="146" href="#146">146</a>         <strong class="jxr_keyword">return</strong> parent;
<a name="147" href="#147">147</a>     }
<a name="148" href="#148">148</a> 
<a name="149" href="#149">149</a>     <em class="jxr_javadoccomment">/**</em>
<a name="150" href="#150">150</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#jjtAddChild(org.apache.velocity.runtime.parser.node.Node, int)</em>
<a name="151" href="#151">151</a> <em class="jxr_javadoccomment">     */</em>
<a name="152" href="#152">152</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> jjtAddChild(<a href="../../../../../../org/apache/velocity/runtime/parser/node/Node.html">Node</a> n, <strong class="jxr_keyword">int</strong> i)
<a name="153" href="#153">153</a>     {
<a name="154" href="#154">154</a>         <strong class="jxr_keyword">if</strong> (children == <strong class="jxr_keyword">null</strong>)
<a name="155" href="#155">155</a>         {
<a name="156" href="#156">156</a>             children = <strong class="jxr_keyword">new</strong> <a href="../../../../../../org/apache/velocity/runtime/parser/node/Node.html">Node</a>[i + 1];
<a name="157" href="#157">157</a>         }
<a name="158" href="#158">158</a>         <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (i &gt;= children.length)
<a name="159" href="#159">159</a>         {
<a name="160" href="#160">160</a>             <a href="../../../../../../org/apache/velocity/runtime/parser/node/Node.html">Node</a> c[] = <strong class="jxr_keyword">new</strong> <a href="../../../../../../org/apache/velocity/runtime/parser/node/Node.html">Node</a>[i + 1];
<a name="161" href="#161">161</a>             System.arraycopy(children, 0, c, 0, children.length);
<a name="162" href="#162">162</a>             children = c;
<a name="163" href="#163">163</a>         }
<a name="164" href="#164">164</a>         children[i] = n;
<a name="165" href="#165">165</a>     }
<a name="166" href="#166">166</a> 
<a name="167" href="#167">167</a>     <em class="jxr_javadoccomment">/**</em>
<a name="168" href="#168">168</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#jjtGetChild(int)</em>
<a name="169" href="#169">169</a> <em class="jxr_javadoccomment">     */</em>
<a name="170" href="#170">170</a>     <strong class="jxr_keyword">public</strong> <a href="../../../../../../org/apache/velocity/runtime/parser/node/Node.html">Node</a> jjtGetChild(<strong class="jxr_keyword">int</strong> i)
<a name="171" href="#171">171</a>     {
<a name="172" href="#172">172</a>         <strong class="jxr_keyword">return</strong> children[i];
<a name="173" href="#173">173</a>     }
<a name="174" href="#174">174</a> 
<a name="175" href="#175">175</a>     <em class="jxr_javadoccomment">/**</em>
<a name="176" href="#176">176</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#jjtGetNumChildren()</em>
<a name="177" href="#177">177</a> <em class="jxr_javadoccomment">     */</em>
<a name="178" href="#178">178</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">int</strong> jjtGetNumChildren()
<a name="179" href="#179">179</a>     {
<a name="180" href="#180">180</a>         <strong class="jxr_keyword">return</strong> (children == <strong class="jxr_keyword">null</strong>) ? 0 : children.length;
<a name="181" href="#181">181</a>     }
<a name="182" href="#182">182</a> 
<a name="183" href="#183">183</a> 
<a name="184" href="#184">184</a>     <em class="jxr_javadoccomment">/**</em>
<a name="185" href="#185">185</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#jjtAccept(org.apache.velocity.runtime.parser.ParserVisitor, java.lang.Object)</em>
<a name="186" href="#186">186</a> <em class="jxr_javadoccomment">     */</em>
<a name="187" href="#187">187</a>     <strong class="jxr_keyword">public</strong> Object jjtAccept(<a href="../../../../../../org/apache/velocity/runtime/parser/ParserVisitor.html">ParserVisitor</a> visitor, Object data)
<a name="188" href="#188">188</a>     {
<a name="189" href="#189">189</a>         <strong class="jxr_keyword">return</strong> visitor.visit(<strong class="jxr_keyword">this</strong>, data);
<a name="190" href="#190">190</a>     }
<a name="191" href="#191">191</a> 
<a name="192" href="#192">192</a> 
<a name="193" href="#193">193</a>     <em class="jxr_javadoccomment">/**</em>
<a name="194" href="#194">194</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#childrenAccept(org.apache.velocity.runtime.parser.ParserVisitor, java.lang.Object)</em>
<a name="195" href="#195">195</a> <em class="jxr_javadoccomment">     */</em>
<a name="196" href="#196">196</a>     <strong class="jxr_keyword">public</strong> Object childrenAccept(<a href="../../../../../../org/apache/velocity/runtime/parser/ParserVisitor.html">ParserVisitor</a> visitor, Object data)
<a name="197" href="#197">197</a>     {
<a name="198" href="#198">198</a>         <strong class="jxr_keyword">if</strong> (children != <strong class="jxr_keyword">null</strong>)
<a name="199" href="#199">199</a>         {
<a name="200" href="#200">200</a>             <strong class="jxr_keyword">for</strong> (<strong class="jxr_keyword">int</strong> i = 0; i &lt; children.length; ++i)
<a name="201" href="#201">201</a>             {
<a name="202" href="#202">202</a>                 children[i].jjtAccept(visitor, data);
<a name="203" href="#203">203</a>             }
<a name="204" href="#204">204</a>         }
<a name="205" href="#205">205</a>         <strong class="jxr_keyword">return</strong> data;
<a name="206" href="#206">206</a>     }
<a name="207" href="#207">207</a> 
<a name="208" href="#208">208</a>     <em class="jxr_comment">/*<em class="jxr_comment"> You can override these two methods in subclasses of SimpleNode to</em></em>
<a name="209" href="#209">209</a> <em class="jxr_comment">        customize the way the node appears when the tree is dumped.  If</em>
<a name="210" href="#210">210</a> <em class="jxr_comment">        your output uses more than one line you should override</em>
<a name="211" href="#211">211</a> <em class="jxr_comment">        toString(String), otherwise overriding toString() is probably all</em>
<a name="212" href="#212">212</a> <em class="jxr_comment">        you need to do. */</em>
<a name="213" href="#213">213</a> 
<a name="214" href="#214">214</a>     <em class="jxr_comment">//    public String toString()</em>
<a name="215" href="#215">215</a>     <em class="jxr_comment">// {</em>
<a name="216" href="#216">216</a>     <em class="jxr_comment">//    return ParserTreeConstants.jjtNodeName[id];</em>
<a name="217" href="#217">217</a>     <em class="jxr_comment">// }</em>
<a name="218" href="#218">218</a>     <em class="jxr_javadoccomment">/**</em>
<a name="219" href="#219">219</a> <em class="jxr_javadoccomment">     * @param prefix</em>
<a name="220" href="#220">220</a> <em class="jxr_javadoccomment">     * @return String representation of this node.</em>
<a name="221" href="#221">221</a> <em class="jxr_javadoccomment">     */</em>
<a name="222" href="#222">222</a>     <strong class="jxr_keyword">public</strong> String toString(String prefix)
<a name="223" href="#223">223</a>     {
<a name="224" href="#224">224</a>         <strong class="jxr_keyword">return</strong> prefix + toString();
<a name="225" href="#225">225</a>     }
<a name="226" href="#226">226</a> 
<a name="227" href="#227">227</a>     <em class="jxr_javadoccomment">/**</em>
<a name="228" href="#228">228</a> <em class="jxr_javadoccomment">     * Override this method if you want to customize how the node dumps</em>
<a name="229" href="#229">229</a> <em class="jxr_javadoccomment">     * out its children.</em>
<a name="230" href="#230">230</a> <em class="jxr_javadoccomment">     *</em>
<a name="231" href="#231">231</a> <em class="jxr_javadoccomment">     * @param prefix</em>
<a name="232" href="#232">232</a> <em class="jxr_javadoccomment">     */</em>
<a name="233" href="#233">233</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> dump(String prefix)
<a name="234" href="#234">234</a>     {
<a name="235" href="#235">235</a>         System.out.println(toString(prefix));
<a name="236" href="#236">236</a>         <strong class="jxr_keyword">if</strong> (children != <strong class="jxr_keyword">null</strong>)
<a name="237" href="#237">237</a>         {
<a name="238" href="#238">238</a>             <strong class="jxr_keyword">for</strong> (<strong class="jxr_keyword">int</strong> i = 0; i &lt; children.length; ++i)
<a name="239" href="#239">239</a>             {
<a name="240" href="#240">240</a>                 <a href="../../../../../../org/apache/velocity/runtime/parser/node/SimpleNode.html">SimpleNode</a> n = (SimpleNode) children[i];
<a name="241" href="#241">241</a>                 <strong class="jxr_keyword">if</strong> (n != <strong class="jxr_keyword">null</strong>)
<a name="242" href="#242">242</a>                 {
<a name="243" href="#243">243</a>                     n.dump(prefix + <span class="jxr_string">" "</span>);
<a name="244" href="#244">244</a>                 }
<a name="245" href="#245">245</a>             }
<a name="246" href="#246">246</a>         }
<a name="247" href="#247">247</a>     }
<a name="248" href="#248">248</a> 
<a name="249" href="#249">249</a>     <em class="jxr_comment">// All additional methods</em>
<a name="250" href="#250">250</a> 
<a name="251" href="#251">251</a>     <em class="jxr_javadoccomment">/**</em>
<a name="252" href="#252">252</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#literal()</em>
<a name="253" href="#253">253</a> <em class="jxr_javadoccomment">     */</em>
<a name="254" href="#254">254</a>     <strong class="jxr_keyword">public</strong> String literal()
<a name="255" href="#255">255</a>     {
<a name="256" href="#256">256</a>         <a href="../../../../../../org/apache/velocity/runtime/parser/Token.html">Token</a> t = first;
<a name="257" href="#257">257</a>         StringBuffer sb = <strong class="jxr_keyword">new</strong> StringBuffer(t.image);
<a name="258" href="#258">258</a> 
<a name="259" href="#259">259</a>         <strong class="jxr_keyword">while</strong> (t != last)
<a name="260" href="#260">260</a>         {
<a name="261" href="#261">261</a>             t = t.next;
<a name="262" href="#262">262</a>             sb.append(t.image);
<a name="263" href="#263">263</a>         }
<a name="264" href="#264">264</a> 
<a name="265" href="#265">265</a>         <strong class="jxr_keyword">return</strong> sb.toString();
<a name="266" href="#266">266</a>     }
<a name="267" href="#267">267</a> 
<a name="268" href="#268">268</a>     <em class="jxr_javadoccomment">/**</em>
<a name="269" href="#269">269</a> <em class="jxr_javadoccomment">     * @throws TemplateInitException </em>
<a name="270" href="#270">270</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#init(org.apache.velocity.context.InternalContextAdapter, java.lang.Object)</em>
<a name="271" href="#271">271</a> <em class="jxr_javadoccomment">     */</em>
<a name="272" href="#272">272</a>     <strong class="jxr_keyword">public</strong> Object init( InternalContextAdapter context, Object data) <strong class="jxr_keyword">throws</strong> TemplateInitException
<a name="273" href="#273">273</a>     {
<a name="274" href="#274">274</a>         <em class="jxr_comment">/*</em>
<a name="275" href="#275">275</a> <em class="jxr_comment">         * hold onto the RuntimeServices</em>
<a name="276" href="#276">276</a> <em class="jxr_comment">         */</em>
<a name="277" href="#277">277</a> 
<a name="278" href="#278">278</a>         rsvc = (RuntimeServices) data;
<a name="279" href="#279">279</a>         log = rsvc.getLog();
<a name="280" href="#280">280</a> 
<a name="281" href="#281">281</a>         <strong class="jxr_keyword">int</strong> i, k = jjtGetNumChildren();
<a name="282" href="#282">282</a> 
<a name="283" href="#283">283</a>         <strong class="jxr_keyword">for</strong> (i = 0; i &lt; k; i++)
<a name="284" href="#284">284</a>         {
<a name="285" href="#285">285</a>             jjtGetChild(i).init( context, data);
<a name="286" href="#286">286</a>         }
<a name="287" href="#287">287</a> 
<a name="288" href="#288">288</a>         <strong class="jxr_keyword">return</strong> data;
<a name="289" href="#289">289</a>     }
<a name="290" href="#290">290</a> 
<a name="291" href="#291">291</a>     <em class="jxr_javadoccomment">/**</em>
<a name="292" href="#292">292</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#evaluate(org.apache.velocity.context.InternalContextAdapter)</em>
<a name="293" href="#293">293</a> <em class="jxr_javadoccomment">     */</em>
<a name="294" href="#294">294</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> evaluate( InternalContextAdapter  context)
<a name="295" href="#295">295</a>         <strong class="jxr_keyword">throws</strong> <a href="../../../../../../org/apache/velocity/exception/MethodInvocationException.html">MethodInvocationException</a>
<a name="296" href="#296">296</a>     {
<a name="297" href="#297">297</a>         <strong class="jxr_keyword">return</strong> false;
<a name="298" href="#298">298</a>     }
<a name="299" href="#299">299</a> 
<a name="300" href="#300">300</a>     <em class="jxr_javadoccomment">/**</em>
<a name="301" href="#301">301</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#value(org.apache.velocity.context.InternalContextAdapter)</em>
<a name="302" href="#302">302</a> <em class="jxr_javadoccomment">     */</em>
<a name="303" href="#303">303</a>     <strong class="jxr_keyword">public</strong> Object value( InternalContextAdapter context)
<a name="304" href="#304">304</a>         <strong class="jxr_keyword">throws</strong> <a href="../../../../../../org/apache/velocity/exception/MethodInvocationException.html">MethodInvocationException</a>
<a name="305" href="#305">305</a>     {
<a name="306" href="#306">306</a>         <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
<a name="307" href="#307">307</a>     }
<a name="308" href="#308">308</a> 
<a name="309" href="#309">309</a>     <em class="jxr_javadoccomment">/**</em>
<a name="310" href="#310">310</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#render(org.apache.velocity.context.InternalContextAdapter, java.io.Writer)</em>
<a name="311" href="#311">311</a> <em class="jxr_javadoccomment">     */</em>
<a name="312" href="#312">312</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> render( InternalContextAdapter context, Writer writer)
<a name="313" href="#313">313</a>         <strong class="jxr_keyword">throws</strong> IOException, MethodInvocationException, ParseErrorException, <a href="../../../../../../org/apache/velocity/exception/ResourceNotFoundException.html">ResourceNotFoundException</a>
<a name="314" href="#314">314</a>     {
<a name="315" href="#315">315</a>         <strong class="jxr_keyword">int</strong> i, k = jjtGetNumChildren();
<a name="316" href="#316">316</a> 
<a name="317" href="#317">317</a>         <strong class="jxr_keyword">for</strong> (i = 0; i &lt; k; i++)
<a name="318" href="#318">318</a>             jjtGetChild(i).render(context, writer);
<a name="319" href="#319">319</a> 
<a name="320" href="#320">320</a>         <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">true</strong>;
<a name="321" href="#321">321</a>     }
<a name="322" href="#322">322</a> 
<a name="323" href="#323">323</a>     <em class="jxr_javadoccomment">/**</em>
<a name="324" href="#324">324</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#execute(java.lang.Object, org.apache.velocity.context.InternalContextAdapter)</em>
<a name="325" href="#325">325</a> <em class="jxr_javadoccomment">     */</em>
<a name="326" href="#326">326</a>     <strong class="jxr_keyword">public</strong> Object execute(Object o, <a href="../../../../../../org/apache/velocity/context/InternalContextAdapter.html">InternalContextAdapter</a> context)
<a name="327" href="#327">327</a>       <strong class="jxr_keyword">throws</strong> <a href="../../../../../../org/apache/velocity/exception/MethodInvocationException.html">MethodInvocationException</a>
<a name="328" href="#328">328</a>     {
<a name="329" href="#329">329</a>         <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
<a name="330" href="#330">330</a>     }
<a name="331" href="#331">331</a> 
<a name="332" href="#332">332</a>     <em class="jxr_javadoccomment">/**</em>
<a name="333" href="#333">333</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#getType()</em>
<a name="334" href="#334">334</a> <em class="jxr_javadoccomment">     */</em>
<a name="335" href="#335">335</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">int</strong> getType()
<a name="336" href="#336">336</a>     {
<a name="337" href="#337">337</a>         <strong class="jxr_keyword">return</strong> id;
<a name="338" href="#338">338</a>     }
<a name="339" href="#339">339</a> 
<a name="340" href="#340">340</a>     <em class="jxr_javadoccomment">/**</em>
<a name="341" href="#341">341</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#setInfo(int)</em>
<a name="342" href="#342">342</a> <em class="jxr_javadoccomment">     */</em>
<a name="343" href="#343">343</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> setInfo(<strong class="jxr_keyword">int</strong> info)
<a name="344" href="#344">344</a>     {
<a name="345" href="#345">345</a>         <strong class="jxr_keyword">this</strong>.info = info;
<a name="346" href="#346">346</a>     }
<a name="347" href="#347">347</a> 
<a name="348" href="#348">348</a>     <em class="jxr_javadoccomment">/**</em>
<a name="349" href="#349">349</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#getInfo()</em>
<a name="350" href="#350">350</a> <em class="jxr_javadoccomment">     */</em>
<a name="351" href="#351">351</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">int</strong> getInfo()
<a name="352" href="#352">352</a>     {
<a name="353" href="#353">353</a>         <strong class="jxr_keyword">return</strong> info;
<a name="354" href="#354">354</a>     }
<a name="355" href="#355">355</a> 
<a name="356" href="#356">356</a>     <em class="jxr_javadoccomment">/**</em>
<a name="357" href="#357">357</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#setInvalid()</em>
<a name="358" href="#358">358</a> <em class="jxr_javadoccomment">     */</em>
<a name="359" href="#359">359</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> setInvalid()
<a name="360" href="#360">360</a>     {
<a name="361" href="#361">361</a>         invalid = <strong class="jxr_keyword">true</strong>;
<a name="362" href="#362">362</a>     }
<a name="363" href="#363">363</a> 
<a name="364" href="#364">364</a>     <em class="jxr_javadoccomment">/**</em>
<a name="365" href="#365">365</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#isInvalid()</em>
<a name="366" href="#366">366</a> <em class="jxr_javadoccomment">     */</em>
<a name="367" href="#367">367</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> isInvalid()
<a name="368" href="#368">368</a>     {
<a name="369" href="#369">369</a>         <strong class="jxr_keyword">return</strong> invalid;
<a name="370" href="#370">370</a>     }
<a name="371" href="#371">371</a> 
<a name="372" href="#372">372</a>     <em class="jxr_javadoccomment">/**</em>
<a name="373" href="#373">373</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#getLine()</em>
<a name="374" href="#374">374</a> <em class="jxr_javadoccomment">     */</em>
<a name="375" href="#375">375</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">int</strong> getLine()
<a name="376" href="#376">376</a>     {
<a name="377" href="#377">377</a>         <strong class="jxr_keyword">return</strong> first.beginLine;
<a name="378" href="#378">378</a>     }
<a name="379" href="#379">379</a> 
<a name="380" href="#380">380</a>     <em class="jxr_javadoccomment">/**</em>
<a name="381" href="#381">381</a> <em class="jxr_javadoccomment">     * @see org.apache.velocity.runtime.parser.node.Node#getColumn()</em>
<a name="382" href="#382">382</a> <em class="jxr_javadoccomment">     */</em>
<a name="383" href="#383">383</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">int</strong> getColumn()
<a name="384" href="#384">384</a>     {
<a name="385" href="#385">385</a>         <strong class="jxr_keyword">return</strong> first.beginColumn;
<a name="386" href="#386">386</a>     }
<a name="387" href="#387">387</a>     
<a name="388" href="#388">388</a>     <strong class="jxr_keyword">public</strong> String toString()
<a name="389" href="#389">389</a>     {
<a name="390" href="#390">390</a>         StringBuffer tokens = <strong class="jxr_keyword">new</strong> StringBuffer();
<a name="391" href="#391">391</a>         
<a name="392" href="#392">392</a>         <strong class="jxr_keyword">for</strong> (Token t = getFirstToken(); t != <strong class="jxr_keyword">null</strong>; )
<a name="393" href="#393">393</a>         {
<a name="394" href="#394">394</a>             tokens.append(<span class="jxr_string">"["</span>).append(t.image).append(<span class="jxr_string">"]"</span>);
<a name="395" href="#395">395</a>             <strong class="jxr_keyword">if</strong> (t.next != <strong class="jxr_keyword">null</strong>)
<a name="396" href="#396">396</a>             {
<a name="397" href="#397">397</a>                 <strong class="jxr_keyword">if</strong> (t.equals(getLastToken()))
<a name="398" href="#398">398</a>                 {
<a name="399" href="#399">399</a>                     <strong class="jxr_keyword">break</strong>;
<a name="400" href="#400">400</a>                 }
<a name="401" href="#401">401</a>                 <strong class="jxr_keyword">else</strong>
<a name="402" href="#402">402</a>                 {
<a name="403" href="#403">403</a>                     tokens.append(<span class="jxr_string">", "</span>);
<a name="404" href="#404">404</a>                 }
<a name="405" href="#405">405</a>             }
<a name="406" href="#406">406</a>             t = t.next;
<a name="407" href="#407">407</a>         }
<a name="408" href="#408">408</a> 
<a name="409" href="#409">409</a>         <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">new</strong> ToStringBuilder(<strong class="jxr_keyword">this</strong>)
<a name="410" href="#410">410</a>             .append(<span class="jxr_string">"id"</span>, getType())
<a name="411" href="#411">411</a>             .append(<span class="jxr_string">"info"</span>, getInfo())
<a name="412" href="#412">412</a>             .append(<span class="jxr_string">"invalid"</span>, isInvalid())
<a name="413" href="#413">413</a>             .append(<span class="jxr_string">"children"</span>, jjtGetNumChildren())
<a name="414" href="#414">414</a>             .append(<span class="jxr_string">"tokens"</span>, tokens)
<a name="415" href="#415">415</a>             .toString();
<a name="416" href="#416">416</a>     }
<a name="417" href="#417">417</a> }
<a name="418" href="#418">418</a> 
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

