Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > f6ec3de51c94922f2240c0767594dcf5 > files > 3208

antlr3-C-docs-3.2-14.fc15.noarch.rpm

<!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">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>ANTLR3C: ANTLR3_ARBORETUM_struct Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.3 -->
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">ANTLR3C&#160;<span id="projectnumber">3.1.2</span></div>
  </td>
 </tr>
 </tbody>
</table>
</div>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
      <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
    </ul>
  </div>
</div>
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
  initNavTree('struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html','');
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#pub-attribs">Data Fields</a>  </div>
  <div class="headertitle">
<h1>ANTLR3_ARBORETUM_struct Struct Reference</h1>  </div>
</div>
<div class="contents">
<!-- doxytag: class="ANTLR3_ARBORETUM_struct" -->
<p>ANTLR3 Tree factory interface to create lots of trees efficiently rather than creating and freeing lots of little bits of memory.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;antlr3commontree.h&gt;</code></p>
<div class="dynheader">
Collaboration diagram for ANTLR3_ARBORETUM_struct:</div>
<div class="dyncontent">
<div class="center"><img src="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct__coll__graph.png" border="0" usemap="#_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct_coll__map" alt="Collaboration graph"/></div>
<map name="_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct_coll__map" id="_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct_coll__map">
<area shape="rect" id="node2" href="struct_a_n_t_l_r3___c_o_m_m_o_n___t_r_e_e__struct.html" title="Interface for an ANTLR3 common tree which is what gets passed around by the AST producing parser..." alt="" coords="2960,263,3232,289"/><area shape="rect" id="node4" href="struct_a_n_t_l_r3___c_o_m_m_o_n___t_o_k_e_n__struct.html" title="The definition of an ANTLR3 common token structure, which all implementations of a token stream shoul..." alt="" coords="1749,348,2032,375"/><area shape="rect" id="node27" href="struct_a_n_t_l_r3___b_a_s_e___t_r_e_e__struct.html" title="A generic tree implementation with no payload." alt="" coords="2164,284,2415,311"/><area shape="rect" id="node6" href="struct_a_n_t_l_r3___s_t_r_i_n_g__struct.html" title="Base string class tracks the allocations and provides simple string tracking functions." alt="" coords="441,453,663,480"/><area shape="rect" id="node9" href="struct_a_n_t_l_r3___s_t_r_i_n_g___f_a_c_t_o_r_y__struct.html" title="Definition of the string factory interface, which creates and tracks strings for you of various shape..." alt="" coords="844,267,1145,293"/><area shape="rect" id="node16" href="struct_a_n_t_l_r3___i_n_p_u_t___s_t_r_e_a_m__struct.html" title="Master context structure for an ANTLR3 C runtime based input stream." alt="" coords="1307,348,1589,375"/><area shape="rect" id="node19" href="struct_a_n_t_l_r3___i_n_t___s_t_r_e_a_m__struct.html" title="ANTLR3_INT_STREAM_struct" alt="" coords="864,471,1125,497"/><area shape="rect" id="node12" href="struct_a_n_t_l_r3___v_e_c_t_o_r__struct.html" title="ANTLR3_VECTOR_struct" alt="" coords="441,137,663,164"/><area shape="rect" id="node34" href="struct_a_n_t_l_r3___s_t_a_c_k__struct.html" title="Structure that represents a Stack collection." alt="" coords="889,87,1100,113"/><area shape="rect" id="node37" href="struct_a_n_t_l_r3___v_e_c_t_o_r___f_a_c_t_o_r_y__struct.html" title="Structure that tracks vectors in a vector and auto deletes the vectors in the vector factory when clo..." alt="" coords="1297,52,1599,79"/><area shape="rect" id="node14" href="struct_a_n_t_l_r3___v_e_c_t_o_r___e_l_e_m_e_n_t__struct.html" title="ANTLR3_VECTOR_ELEMENT_struct" alt="" coords="7,137,308,164"/></map>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-attribs"></a>
Data Fields</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html#a660071d49ae325d90d74c84d635f44f0">close</a> )(struct <a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html">ANTLR3_ARBORETUM_struct</a> *factory)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Pointer to a function the destroys the factory.  <a href="#a660071d49ae325d90d74c84d635f44f0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_a_n_t_l_r3___b_a_s_e___t_r_e_e__struct.html">pANTLR3_BASE_TREE</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html#abb466f6a3cbd9c564afac3df05c17a58">newFromToken</a> )(struct <a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html">ANTLR3_ARBORETUM_struct</a> *factory, <a class="el" href="struct_a_n_t_l_r3___c_o_m_m_o_n___t_o_k_e_n__struct.html">pANTLR3_COMMON_TOKEN</a> token)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_a_n_t_l_r3___b_a_s_e___t_r_e_e__struct.html">pANTLR3_BASE_TREE</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html#a6981716236050e944fea73ab68aa63ee">newFromTree</a> )(struct <a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html">ANTLR3_ARBORETUM_struct</a> *factory, <a class="el" href="struct_a_n_t_l_r3___c_o_m_m_o_n___t_r_e_e__struct.html">pANTLR3_COMMON_TREE</a> tree)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_a_n_t_l_r3___b_a_s_e___t_r_e_e__struct.html">pANTLR3_BASE_TREE</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html#afcc21b10572980a008d502d22f2e8ee1">newTree</a> )(struct <a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html">ANTLR3_ARBORETUM_struct</a> *factory)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Pointer to a function that returns a new tree.  <a href="#afcc21b10572980a008d502d22f2e8ee1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="antlr3defs_8h.html#ac41f744abd0fd25144b9eb9d11b1dfd1">ANTLR3_UINT32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html#a3f359543cfbb1db3986c2c1873cd18f7">nextTree</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The next token to throw out from the pool, will cause a new pool allocation if this exceeds the available tokenCount.  <a href="#a3f359543cfbb1db3986c2c1873cd18f7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_a_n_t_l_r3___s_t_a_c_k__struct.html">pANTLR3_STACK</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html#ab63a7b88bbfa5444b51ac026680643c6">nilStack</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">A resuse stack for reclaiming Nil nodes that were used in rewrites and are now dead.  <a href="#ab63a7b88bbfa5444b51ac026680643c6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_a_n_t_l_r3___c_o_m_m_o_n___t_r_e_e__struct.html">pANTLR3_COMMON_TREE</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html#af1ca4b92a269636ba1e16b3332e53fe1">pools</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Pointers to the array of tokens that this factory has produced so far.  <a href="#af1ca4b92a269636ba1e16b3332e53fe1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="antlr3defs_8h.html#a6faef5c4687f8eb633d2aefea93973ca">ANTLR3_INT32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html#a19e4da052a80ecbc584efc6e868fb638">thisPool</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Current pool tokens we are allocating from.  <a href="#a19e4da052a80ecbc584efc6e868fb638"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_a_n_t_l_r3___c_o_m_m_o_n___t_r_e_e__struct.html">ANTLR3_COMMON_TREE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html#a1be3818e6d2c0eca5135e6da9cdb63e7">unTruc</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Trick to initialize tokens and their API quickly, we set up this token when the factory is created, then just copy the memory it uses into the new token.  <a href="#a1be3818e6d2c0eca5135e6da9cdb63e7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_a_n_t_l_r3___v_e_c_t_o_r___f_a_c_t_o_r_y__struct.html">pANTLR3_VECTOR_FACTORY</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html#a0f3ce5ddf38502f608a82ff48c63617c">vFactory</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Pointer to a vector factory that is used to create child list vectors for any child nodes that need them.  <a href="#a0f3ce5ddf38502f608a82ff48c63617c"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>ANTLR3 Tree factory interface to create lots of trees efficiently rather than creating and freeing lots of little bits of memory. </p>
</div><hr/><h2>Field Documentation</h2>
<a class="anchor" id="a660071d49ae325d90d74c84d635f44f0"></a><!-- doxytag: member="ANTLR3_ARBORETUM_struct::close" ref="a660071d49ae325d90d74c84d635f44f0" args=")(struct ANTLR3_ARBORETUM_struct *factory)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void(* <a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html#a660071d49ae325d90d74c84d635f44f0">ANTLR3_ARBORETUM_struct::close</a>)(struct <a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html">ANTLR3_ARBORETUM_struct</a> *factory)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Pointer to a function the destroys the factory. </p>

<p>Referenced by <a class="el" href="antlr3defs_8h.html#adc10027310be547445fa9ed632d5dece">antlr3ArboretumNew()</a>, and <a class="el" href="antlr3commontreeadaptor_8c.html#aabc8fbfc219592f80d83bc77203e0e4d">ctaFree()</a>.</p>

</div>
</div>
<a class="anchor" id="abb466f6a3cbd9c564afac3df05c17a58"></a><!-- doxytag: member="ANTLR3_ARBORETUM_struct::newFromToken" ref="abb466f6a3cbd9c564afac3df05c17a58" args=")(struct ANTLR3_ARBORETUM_struct *factory, pANTLR3_COMMON_TOKEN token)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct_a_n_t_l_r3___b_a_s_e___t_r_e_e__struct.html">pANTLR3_BASE_TREE</a>(* <a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html#abb466f6a3cbd9c564afac3df05c17a58">ANTLR3_ARBORETUM_struct::newFromToken</a>)(struct <a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html">ANTLR3_ARBORETUM_struct</a> *factory, <a class="el" href="struct_a_n_t_l_r3___c_o_m_m_o_n___t_o_k_e_n__struct.html">pANTLR3_COMMON_TOKEN</a> token)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="antlr3defs_8h.html#adc10027310be547445fa9ed632d5dece">antlr3ArboretumNew()</a>.</p>

</div>
</div>
<a class="anchor" id="a6981716236050e944fea73ab68aa63ee"></a><!-- doxytag: member="ANTLR3_ARBORETUM_struct::newFromTree" ref="a6981716236050e944fea73ab68aa63ee" args=")(struct ANTLR3_ARBORETUM_struct *factory, pANTLR3_COMMON_TREE tree)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct_a_n_t_l_r3___b_a_s_e___t_r_e_e__struct.html">pANTLR3_BASE_TREE</a>(* <a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html#a6981716236050e944fea73ab68aa63ee">ANTLR3_ARBORETUM_struct::newFromTree</a>)(struct <a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html">ANTLR3_ARBORETUM_struct</a> *factory, <a class="el" href="struct_a_n_t_l_r3___c_o_m_m_o_n___t_r_e_e__struct.html">pANTLR3_COMMON_TREE</a> tree)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="antlr3defs_8h.html#adc10027310be547445fa9ed632d5dece">antlr3ArboretumNew()</a>, and <a class="el" href="antlr3commontree_8c.html#a00872fc95025076f2ce0a1665d144a4b">dupNode()</a>.</p>

</div>
</div>
<a class="anchor" id="afcc21b10572980a008d502d22f2e8ee1"></a><!-- doxytag: member="ANTLR3_ARBORETUM_struct::newTree" ref="afcc21b10572980a008d502d22f2e8ee1" args=")(struct ANTLR3_ARBORETUM_struct *factory)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct_a_n_t_l_r3___b_a_s_e___t_r_e_e__struct.html">pANTLR3_BASE_TREE</a>(* <a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html#afcc21b10572980a008d502d22f2e8ee1">ANTLR3_ARBORETUM_struct::newTree</a>)(struct <a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html">ANTLR3_ARBORETUM_struct</a> *factory)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Pointer to a function that returns a new tree. </p>

<p>Referenced by <a class="el" href="antlr3defs_8h.html#adc10027310be547445fa9ed632d5dece">antlr3ArboretumNew()</a>, <a class="el" href="antlr3commontree_8c.html#a4ee1fbc2841cf01518e1d0cd0b620e1e">newFromToken()</a>, and <a class="el" href="antlr3commontree_8c.html#a629b852e537616c63e10abcea6668c40">newFromTree()</a>.</p>

</div>
</div>
<a class="anchor" id="a3f359543cfbb1db3986c2c1873cd18f7"></a><!-- doxytag: member="ANTLR3_ARBORETUM_struct::nextTree" ref="a3f359543cfbb1db3986c2c1873cd18f7" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="antlr3defs_8h.html#ac41f744abd0fd25144b9eb9d11b1dfd1">ANTLR3_UINT32</a> <a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html#a3f359543cfbb1db3986c2c1873cd18f7">ANTLR3_ARBORETUM_struct::nextTree</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The next token to throw out from the pool, will cause a new pool allocation if this exceeds the available tokenCount. </p>

<p>Referenced by <a class="el" href="antlr3commontree_8c.html#a4c08a8db461075bfb1265fdab747f935">newPool()</a>, and <a class="el" href="antlr3commontree_8c.html#a108253520363014dfbdaf22f65f83275">newPoolTree()</a>.</p>

</div>
</div>
<a class="anchor" id="ab63a7b88bbfa5444b51ac026680643c6"></a><!-- doxytag: member="ANTLR3_ARBORETUM_struct::nilStack" ref="ab63a7b88bbfa5444b51ac026680643c6" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct_a_n_t_l_r3___s_t_a_c_k__struct.html">pANTLR3_STACK</a> <a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html#ab63a7b88bbfa5444b51ac026680643c6">ANTLR3_ARBORETUM_struct::nilStack</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>A resuse stack for reclaiming Nil nodes that were used in rewrites and are now dead. </p>
<p>The <a class="el" href="antlr3basetreeadaptor_8c.html#a344b47b2135ffa1a7bf782b09974acdd" title="Create and return a nil tree node (no token payload)">nilNode()</a> method will eat one of these before creating a new node. </p>

<p>Referenced by <a class="el" href="antlr3defs_8h.html#adc10027310be547445fa9ed632d5dece">antlr3ArboretumNew()</a>, <a class="el" href="antlr3commontree_8c.html#a3b4a4fbf57e61ffbe7abd04e12f087bf">factoryClose()</a>, <a class="el" href="antlr3commontree_8c.html#a108253520363014dfbdaf22f65f83275">newPoolTree()</a>, and <a class="el" href="antlr3commontree_8c.html#a8a548aab28e9961332826e83480544b8">reuse()</a>.</p>

</div>
</div>
<a class="anchor" id="af1ca4b92a269636ba1e16b3332e53fe1"></a><!-- doxytag: member="ANTLR3_ARBORETUM_struct::pools" ref="af1ca4b92a269636ba1e16b3332e53fe1" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct_a_n_t_l_r3___c_o_m_m_o_n___t_r_e_e__struct.html">pANTLR3_COMMON_TREE</a>* <a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html#af1ca4b92a269636ba1e16b3332e53fe1">ANTLR3_ARBORETUM_struct::pools</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Pointers to the array of tokens that this factory has produced so far. </p>

<p>Referenced by <a class="el" href="antlr3defs_8h.html#adc10027310be547445fa9ed632d5dece">antlr3ArboretumNew()</a>, <a class="el" href="antlr3commontree_8c.html#a3b4a4fbf57e61ffbe7abd04e12f087bf">factoryClose()</a>, <a class="el" href="antlr3commontree_8c.html#a4c08a8db461075bfb1265fdab747f935">newPool()</a>, and <a class="el" href="antlr3commontree_8c.html#a108253520363014dfbdaf22f65f83275">newPoolTree()</a>.</p>

</div>
</div>
<a class="anchor" id="a19e4da052a80ecbc584efc6e868fb638"></a><!-- doxytag: member="ANTLR3_ARBORETUM_struct::thisPool" ref="a19e4da052a80ecbc584efc6e868fb638" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="antlr3defs_8h.html#a6faef5c4687f8eb633d2aefea93973ca">ANTLR3_INT32</a> <a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html#a19e4da052a80ecbc584efc6e868fb638">ANTLR3_ARBORETUM_struct::thisPool</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Current pool tokens we are allocating from. </p>

<p>Referenced by <a class="el" href="antlr3defs_8h.html#adc10027310be547445fa9ed632d5dece">antlr3ArboretumNew()</a>, <a class="el" href="antlr3commontree_8c.html#a3b4a4fbf57e61ffbe7abd04e12f087bf">factoryClose()</a>, <a class="el" href="antlr3commontree_8c.html#a4c08a8db461075bfb1265fdab747f935">newPool()</a>, and <a class="el" href="antlr3commontree_8c.html#a108253520363014dfbdaf22f65f83275">newPoolTree()</a>.</p>

</div>
</div>
<a class="anchor" id="a1be3818e6d2c0eca5135e6da9cdb63e7"></a><!-- doxytag: member="ANTLR3_ARBORETUM_struct::unTruc" ref="a1be3818e6d2c0eca5135e6da9cdb63e7" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct_a_n_t_l_r3___c_o_m_m_o_n___t_r_e_e__struct.html">ANTLR3_COMMON_TREE</a> <a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html#a1be3818e6d2c0eca5135e6da9cdb63e7">ANTLR3_ARBORETUM_struct::unTruc</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Trick to initialize tokens and their API quickly, we set up this token when the factory is created, then just copy the memory it uses into the new token. </p>

<p>Referenced by <a class="el" href="antlr3defs_8h.html#adc10027310be547445fa9ed632d5dece">antlr3ArboretumNew()</a>, and <a class="el" href="antlr3commontree_8c.html#a108253520363014dfbdaf22f65f83275">newPoolTree()</a>.</p>

</div>
</div>
<a class="anchor" id="a0f3ce5ddf38502f608a82ff48c63617c"></a><!-- doxytag: member="ANTLR3_ARBORETUM_struct::vFactory" ref="a0f3ce5ddf38502f608a82ff48c63617c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct_a_n_t_l_r3___v_e_c_t_o_r___f_a_c_t_o_r_y__struct.html">pANTLR3_VECTOR_FACTORY</a> <a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html#a0f3ce5ddf38502f608a82ff48c63617c">ANTLR3_ARBORETUM_struct::vFactory</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Pointer to a vector factory that is used to create child list vectors for any child nodes that need them. </p>
<p>This means that we auto track the vectors and auto free them when we close the factory. It also means that all rewriting trees can use the same tree factory and the same vector factory and we do not dup any nodes unless we must do so explicitly because of context such as an empty rewrite stream and -&gt;IMAGINARY[ID] so on. This makes memory tracking much simpler and tempts no errors. </p>

<p>Referenced by <a class="el" href="antlr3defs_8h.html#adc10027310be547445fa9ed632d5dece">antlr3ArboretumNew()</a>, and <a class="el" href="antlr3commontree_8c.html#a3b4a4fbf57e61ffbe7abd04e12f087bf">factoryClose()</a>.</p>

</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li>include/<a class="el" href="antlr3commontree_8h.html">antlr3commontree.h</a></li>
</ul>
</div>
</div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="struct_a_n_t_l_r3___a_r_b_o_r_e_t_u_m__struct.html">ANTLR3_ARBORETUM_struct</a>      </li>
      <li class="footer">Generated on Tue Feb 8 2011 for ANTLR3C by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.3 </li>
    </ul>
  </div>

</body>
</html>