<!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: include/antlr3tokenstream.h File 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 <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 Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li class="current"><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="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>Globals</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('antlr3tokenstream_8h.html',''); </script> <div id="doc-content"> <div class="header"> <div class="summary"> <a href="#nested-classes">Data Structures</a> | <a href="#typedef-members">Typedefs</a> </div> <div class="headertitle"> <h1>antlr3tokenstream.h File Reference</h1> </div> </div> <div class="contents"> <p>Defines the interface for an ANTLR3 common token stream. <a href="#_details">More...</a></p> <div class="textblock"><code>#include <<a class="el" href="antlr3defs_8h.html">antlr3defs.h</a>></code><br/> <code>#include <<a class="el" href="antlr3string_8h.html">antlr3string.h</a>></code><br/> <code>#include <<a class="el" href="antlr3collections_8h.html">antlr3collections.h</a>></code><br/> <code>#include <<a class="el" href="antlr3input_8h.html">antlr3input.h</a>></code><br/> <code>#include <<a class="el" href="antlr3commontoken_8h.html">antlr3commontoken.h</a>></code><br/> <code>#include <<a class="el" href="antlr3bitset_8h.html">antlr3bitset.h</a>></code><br/> <code>#include <<a class="el" href="antlr3debugeventlistener_8h.html">antlr3debugeventlistener.h</a>></code><br/> </div><div class="textblock"><div class="dynheader"> Include dependency graph for antlr3tokenstream.h:</div> <div class="dyncontent"> <div class="center"><img src="antlr3tokenstream_8h__incl.png" border="0" usemap="#include_2antlr3tokenstream_8h" alt=""/></div> <map name="include_2antlr3tokenstream_8h" id="include_2antlr3tokenstream_8h"> <area shape="rect" id="node3" href="antlr3defs_8h.html" title="Basic type and constant definitions for ANTLR3 Runtime." alt="" coords="439,453,580,480"/><area shape="rect" id="node16" href="antlr3string_8h.html" title="Simple string interface allows indiscriminate allocation of strings such that they can be allocated a..." alt="" coords="309,229,472,256"/><area shape="rect" id="node19" href="antlr3collections_8h.html" title="antlr3collections.h" alt="" coords="208,304,419,331"/><area shape="rect" id="node22" href="antlr3bitset_8h.html" title="Defines the basic structures of an ANTLR3 bitset." alt="" coords="208,379,371,405"/><area shape="rect" id="node27" href="antlr3input_8h.html" title="Defines the basic structures used to manipulate character streams from any input source." alt="" coords="567,155,719,181"/><area shape="rect" id="node31" href="antlr3commontoken_8h.html" title="Defines the interface for a common token." alt="" coords="721,304,932,331"/><area shape="rect" id="node40" href="antlr3debugeventlistener_8h.html" title="The definition of all debugging events that a recognizer can trigger." alt="" coords="837,80,1120,107"/><area shape="rect" id="node5" href="antlr3errors_8h.html" title="antlr3errors.h" alt="" coords="5,528,168,555"/><area shape="rect" id="node11" href="antlr3interfaces_8h.html" title="Declarations for all the antlr3 C runtime interfaces/classes." alt="" coords="493,528,696,555"/><area shape="rect" id="node13" href="antlr3convertutf_8h.html" title="antlr3convertutf.h" alt="" coords="720,528,923,555"/><area shape="rect" id="node34" href="antlr3intstream_8h.html" title="Defines the the class interface for an antlr3 INTSTREAM." alt="" coords="597,229,789,256"/><area shape="rect" id="node43" href="antlr3basetree_8h.html" title="Definition of the ANTLR3 base tree." alt="" coords="361,155,543,181"/></map> </div> </div><div class="textblock"><div class="dynheader"> This graph shows which files directly or indirectly include this file:</div> <div class="dyncontent"> <div class="center"><img src="antlr3tokenstream_8h__dep__incl.png" border="0" usemap="#include_2antlr3tokenstream_8hdep" alt=""/></div> <map name="include_2antlr3tokenstream_8hdep" id="include_2antlr3tokenstream_8hdep"> <area shape="rect" id="node3" href="antlr3_8h.html" title="include/antlr3.h" alt="" coords="300,229,481,256"/><area shape="rect" id="node5" href="antlr3baserecognizer_8h.html" title="Defines the basic structure to support recognizing by either a lexer, parser, or tree parser..." alt="" coords="456,80,779,107"/><area shape="rect" id="node11" href="antlr3lexer_8h.html" title="Base interface for any ANTLR3 lexer." alt="" coords="35,155,267,181"/><area shape="rect" id="node8" href="antlr3cyclicdfa_8h.html" title="include/antlr3cyclicdfa.h" alt="" coords="341,155,613,181"/><area shape="rect" id="node15" href="antlr3parser_8h.html" title="Base implementation of an ANTLR3 parser." alt="" coords="637,155,880,181"/><area shape="rect" id="node19" href="antlr3rewritestreams_8h.html" title="include/antlr3rewritestreams.h" alt="" coords="904,155,1227,181"/><area shape="rect" id="node22" href="antlr3treeparser_8h.html" title="include/antlr3treeparser.h" alt="" coords="1251,155,1533,181"/></map> </div> </div><table class="memberdecls"> <tr><td colspan="2"><h2><a name="nested-classes"></a> Data Structures</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_a_n_t_l_r3___c_o_m_m_o_n___t_o_k_e_n___s_t_r_e_a_m__struct.html">ANTLR3_COMMON_TOKEN_STREAM_struct</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Common token stream is an implementation of ANTLR_TOKEN_STREAM for the default parsers and recognizers. <a href="struct_a_n_t_l_r3___c_o_m_m_o_n___t_o_k_e_n___s_t_r_e_a_m__struct.html#_details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_a_n_t_l_r3___t_o_k_e_n___s_o_u_r_c_e__struct.html">ANTLR3_TOKEN_SOURCE_struct</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Definition of a token source, which has a pointer to a function that returns the next token (using a token factory if it is going to be efficient) and a pointer to an ANTLR3_INPUT_STREAM. <a href="struct_a_n_t_l_r3___t_o_k_e_n___s_o_u_r_c_e__struct.html#_details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_a_n_t_l_r3___t_o_k_e_n___s_t_r_e_a_m__struct.html">ANTLR3_TOKEN_STREAM_struct</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Definition of the ANTLR3 common token stream interface. <a href="struct_a_n_t_l_r3___t_o_k_e_n___s_t_r_e_a_m__struct.html#_details">More...</a><br/></td></tr> <tr><td colspan="2"><h2><a name="typedef-members"></a> Typedefs</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/> <a class="el" href="struct_a_n_t_l_r3___c_o_m_m_o_n___t_o_k_e_n___s_t_r_e_a_m__struct.html">ANTLR3_COMMON_TOKEN_STREAM_struct</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="antlr3tokenstream_8h.html#a463cd94e4fdea8a00a303e6868047faa">ANTLR3_COMMON_TOKEN_STREAM</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Common token stream is an implementation of ANTLR_TOKEN_STREAM for the default parsers and recognizers. <a href="#a463cd94e4fdea8a00a303e6868047faa"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/> <a class="el" href="struct_a_n_t_l_r3___t_o_k_e_n___s_o_u_r_c_e__struct.html">ANTLR3_TOKEN_SOURCE_struct</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="antlr3tokenstream_8h.html#a7c8ee4917886d2c4e04a5c0346ef69c9">ANTLR3_TOKEN_SOURCE</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Definition of a token source, which has a pointer to a function that returns the next token (using a token factory if it is going to be efficient) and a pointer to an ANTLR3_INPUT_STREAM. <a href="#a7c8ee4917886d2c4e04a5c0346ef69c9"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/> <a class="el" href="struct_a_n_t_l_r3___t_o_k_e_n___s_t_r_e_a_m__struct.html">ANTLR3_TOKEN_STREAM_struct</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="antlr3tokenstream_8h.html#a1b5980b8a378f07bca473db62232025c">ANTLR3_TOKEN_STREAM</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Definition of the ANTLR3 common token stream interface. <a href="#a1b5980b8a378f07bca473db62232025c"></a><br/></td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <div class="textblock"><p>Defines the interface for an ANTLR3 common token stream. </p> <p>Custom token streams should create one of these and then override any functions by installing their own pointers to implement the various functions. </p> </div><hr/><h2>Typedef Documentation</h2> <a class="anchor" id="a463cd94e4fdea8a00a303e6868047faa"></a><!-- doxytag: member="antlr3tokenstream.h::ANTLR3_COMMON_TOKEN_STREAM" ref="a463cd94e4fdea8a00a303e6868047faa" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef struct <a class="el" href="struct_a_n_t_l_r3___c_o_m_m_o_n___t_o_k_e_n___s_t_r_e_a_m__struct.html">ANTLR3_COMMON_TOKEN_STREAM_struct</a> <a class="el" href="struct_a_n_t_l_r3___c_o_m_m_o_n___t_o_k_e_n___s_t_r_e_a_m__struct.html">ANTLR3_COMMON_TOKEN_STREAM</a></td> </tr> </table> </div> <div class="memdoc"> <p>Common token stream is an implementation of ANTLR_TOKEN_STREAM for the default parsers and recognizers. </p> <p>You may of course build your own implementation if you are so inclined. </p> </div> </div> <a class="anchor" id="a7c8ee4917886d2c4e04a5c0346ef69c9"></a><!-- doxytag: member="antlr3tokenstream.h::ANTLR3_TOKEN_SOURCE" ref="a7c8ee4917886d2c4e04a5c0346ef69c9" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef struct <a class="el" href="struct_a_n_t_l_r3___t_o_k_e_n___s_o_u_r_c_e__struct.html">ANTLR3_TOKEN_SOURCE_struct</a> <a class="el" href="struct_a_n_t_l_r3___t_o_k_e_n___s_o_u_r_c_e__struct.html">ANTLR3_TOKEN_SOURCE</a></td> </tr> </table> </div> <div class="memdoc"> <p>Definition of a token source, which has a pointer to a function that returns the next token (using a token factory if it is going to be efficient) and a pointer to an ANTLR3_INPUT_STREAM. </p> <p>This is slightly different to the Java interface because we have no way to implement multiple interfaces without defining them in the interface structure or casting (void *), which is too convoluted. </p> </div> </div> <a class="anchor" id="a1b5980b8a378f07bca473db62232025c"></a><!-- doxytag: member="antlr3tokenstream.h::ANTLR3_TOKEN_STREAM" ref="a1b5980b8a378f07bca473db62232025c" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef struct <a class="el" href="struct_a_n_t_l_r3___t_o_k_e_n___s_t_r_e_a_m__struct.html">ANTLR3_TOKEN_STREAM_struct</a> <a class="el" href="struct_a_n_t_l_r3___t_o_k_e_n___s_t_r_e_a_m__struct.html">ANTLR3_TOKEN_STREAM</a></td> </tr> </table> </div> <div class="memdoc"> <p>Definition of the ANTLR3 common token stream interface. </p> <dl class="remark"><dt><b>Remarks:</b></dt><dd>Much of the documentation for this interface is stolen from Ter's Java implementation. </dd></dl> </div> </div> </div> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="antlr3tokenstream_8h.html">antlr3tokenstream.h</a> </li> <li class="footer">Generated on Tue Feb 8 2011 for ANTLR3C by  <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>