<!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/antlr3bitset.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('antlr3bitset_8h.html',''); </script> <div id="doc-content"> <div class="header"> <div class="summary"> <a href="#nested-classes">Data Structures</a> | <a href="#define-members">Defines</a> | <a href="#typedef-members">Typedefs</a> </div> <div class="headertitle"> <h1>antlr3bitset.h File Reference</h1> </div> </div> <div class="contents"> <p>Defines the basic structures of an ANTLR3 bitset. <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="antlr3collections_8h.html">antlr3collections.h</a>></code><br/> </div><div class="textblock"><div class="dynheader"> Include dependency graph for antlr3bitset.h:</div> <div class="dyncontent"> <div class="center"><img src="antlr3bitset_8h__incl.png" border="0" usemap="#include_2antlr3bitset_8h" alt=""/></div> <map name="include_2antlr3bitset_8h" id="include_2antlr3bitset_8h"> <area shape="rect" id="node3" href="antlr3defs_8h.html" title="Basic type and constant definitions for ANTLR3 Runtime." alt="" coords="439,155,580,181"/><area shape="rect" id="node16" href="antlr3collections_8h.html" title="antlr3collections.h" alt="" coords="476,80,687,107"/><area shape="rect" id="node5" href="antlr3errors_8h.html" title="antlr3errors.h" alt="" coords="5,229,168,256"/><area shape="rect" id="node11" href="antlr3interfaces_8h.html" title="Declarations for all the antlr3 C runtime interfaces/classes." alt="" coords="493,229,696,256"/><area shape="rect" id="node13" href="antlr3convertutf_8h.html" title="antlr3convertutf.h" alt="" coords="720,229,923,256"/></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="antlr3bitset_8h__dep__incl.png" border="0" usemap="#include_2antlr3bitset_8hdep" alt=""/></div> <map name="include_2antlr3bitset_8hdep" id="include_2antlr3bitset_8hdep"> <area shape="rect" id="node3" href="antlr3_8h.html" title="include/antlr3.h" alt="" coords="1472,752,1653,779"/><area shape="rect" id="node5" href="antlr3collections_8h.html" title="include/antlr3collections.h" alt="" coords="898,80,1189,107"/><area shape="rect" id="node50" href="antlr3tokenstream_8h.html" title="Defines the interface for an ANTLR3 common token stream." alt="" coords="436,528,726,555"/><area shape="rect" id="node8" href="antlr3basetree_8h.html" title="Definition of the ANTLR3 base tree." alt="" coords="1700,229,1961,256"/><area shape="rect" id="node10" href="antlr3basetreeadaptor_8h.html" title="Definition of the ANTLR3 base tree adaptor." alt="" coords="1742,379,2073,405"/><area shape="rect" id="node13" href="antlr3commontreeadaptor_8h.html" title="Definition of the ANTLR3 common tree adaptor." alt="" coords="1209,453,1561,480"/><area shape="rect" id="node16" href="antlr3commontreenodestream_8h.html" title="Definition of the ANTLR3 common tree node stream." alt="" coords="1194,528,1576,555"/><area shape="rect" id="node32" href="antlr3rewritestreams_8h.html" title="include/antlr3rewritestreams.h" alt="" coords="26,677,349,704"/><area shape="rect" id="node62" href="antlr3string_8h.html" title="Simple string interface allows indiscriminate allocation of strings such that they can be allocated a..." alt="" coords="1002,155,1245,181"/><area shape="rect" id="node40" href="antlr3commontree_8h.html" title="include/antlr3commontree.h" alt="" coords="1334,379,1617,405"/><area shape="rect" id="node44" href="antlr3debugeventlistener_8h.html" title="The definition of all debugging events that a recognizer can trigger." alt="" coords="1161,304,1524,331"/><area shape="rect" id="node55" href="antlr3parsetree_8h.html" title="Abstraction of Common tree to provide payload and string representation of node." alt="" coords="1750,304,2022,331"/><area shape="rect" id="node18" href="antlr3baserecognizer_8h.html" title="Defines the basic structure to support recognizing by either a lexer, parser, or tree parser..." alt="" coords="902,603,1225,629"/><area shape="rect" id="node35" href="antlr3treeparser_8h.html" title="include/antlr3treeparser.h" alt="" coords="1242,677,1525,704"/><area shape="rect" id="node21" href="antlr3cyclicdfa_8h.html" title="include/antlr3cyclicdfa.h" alt="" coords="680,677,952,704"/><area shape="rect" id="node24" href="antlr3lexer_8h.html" title="Base interface for any ANTLR3 lexer." alt="" coords="373,677,605,704"/><area shape="rect" id="node28" href="antlr3parser_8h.html" title="Base implementation of an ANTLR3 parser." alt="" coords="976,677,1218,704"/><area shape="rect" id="node69" href="antlr3input_8h.html" title="Defines the basic structures used to manipulate character streams from any input source." alt="" coords="801,453,1033,480"/></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___b_i_t_s_e_t___l_i_s_t__struct.html">ANTLR3_BITSET_LIST_struct</a></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___b_i_t_s_e_t__struct.html">ANTLR3_BITSET_struct</a></td></tr> <tr><td colspan="2"><h2><a name="define-members"></a> Defines</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="antlr3bitset_8h.html#ab94147859ecaf6349e1ad7f950567928">ANTLR3_BITSET_BITS</a>   64</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">How many bits in the elements. <a href="#ab94147859ecaf6349e1ad7f950567928"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="antlr3bitset_8h.html#a065030a161bde77dc82cddac8b225bd0">ANTLR3_BITSET_LOG_BITS</a>   6</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">log2 of ANTLR3_BITSET_BITS 2^ANTLR3_BITSET_LOG_BITS = ANTLR3_BITSET_BITS <a href="#a065030a161bde77dc82cddac8b225bd0"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="antlr3bitset_8h.html#aa25e7383bc45376cff8e9389e77330c4">ANTLR3_BITSET_MOD_MASK</a>   ANTLR3_BITSET_BITS - 1</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">We will often need to do a mod operator (i mod nbits). <a href="#aa25e7383bc45376cff8e9389e77330c4"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="antlr3bitset_8h.html#a0d939dc6a3704111cc7446928b313bd4">ANTLR3_BITSET_NIBBLE</a>   4</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">How many bits in a nible of bits. <a href="#a0d939dc6a3704111cc7446928b313bd4"></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 <a class="el" href="struct_a_n_t_l_r3___b_i_t_s_e_t__struct.html">ANTLR3_BITSET_struct</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="antlr3bitset_8h.html#a255fe25a6a70b9014013e5eabbbb120b">ANTLR3_BITSET</a></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___b_i_t_s_e_t___l_i_s_t__struct.html">ANTLR3_BITSET_LIST_struct</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="antlr3bitset_8h.html#a86906e51435280af1cbafd2340e91179">ANTLR3_BITSET_LIST</a></td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <div class="textblock"><p>Defines the basic structures of an ANTLR3 bitset. </p> <p>this is a C version of the cut down Bitset class provided with the java version of antlr 3. </p> </div><hr/><h2>Define Documentation</h2> <a class="anchor" id="ab94147859ecaf6349e1ad7f950567928"></a><!-- doxytag: member="antlr3bitset.h::ANTLR3_BITSET_BITS" ref="ab94147859ecaf6349e1ad7f950567928" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define ANTLR3_BITSET_BITS   64</td> </tr> </table> </div> <div class="memdoc"> <p>How many bits in the elements. </p> <p>Referenced by <a class="el" href="antlr3bitset_8c.html#a27d5998204727b78f3ab89c31d2beacf">antlr3BitsetClone()</a>, <a class="el" href="antlr3defs_8h.html#a4179c82d3761a00b268461756c59222a">antlr3BitsetNew()</a>, and <a class="el" href="antlr3bitset_8c.html#a39443d4264927c670d34df70ae33f03e">antlr3BitsetSize()</a>.</p> </div> </div> <a class="anchor" id="a065030a161bde77dc82cddac8b225bd0"></a><!-- doxytag: member="antlr3bitset.h::ANTLR3_BITSET_LOG_BITS" ref="a065030a161bde77dc82cddac8b225bd0" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define ANTLR3_BITSET_LOG_BITS   6</td> </tr> </table> </div> <div class="memdoc"> <p>log2 of ANTLR3_BITSET_BITS 2^ANTLR3_BITSET_LOG_BITS = ANTLR3_BITSET_BITS </p> <p>Referenced by <a class="el" href="antlr3defs_8h.html#a4179c82d3761a00b268461756c59222a">antlr3BitsetNew()</a>, <a class="el" href="antlr3bitset_8c.html#a9f79c2465a6c3c2e6d3b61b2f03373a8">antlr3BitsetNumBits()</a>, <a class="el" href="antlr3bitset_8c.html#a54002a09d61bd76ff7a9c3c06425aff1">numWordsToHold()</a>, and <a class="el" href="antlr3bitset_8c.html#a8d2e4e0003945f022083c388c8550a2d">wordNumber()</a>.</p> </div> </div> <a class="anchor" id="aa25e7383bc45376cff8e9389e77330c4"></a><!-- doxytag: member="antlr3bitset.h::ANTLR3_BITSET_MOD_MASK" ref="aa25e7383bc45376cff8e9389e77330c4" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define ANTLR3_BITSET_MOD_MASK   ANTLR3_BITSET_BITS - 1</td> </tr> </table> </div> <div class="memdoc"> <p>We will often need to do a mod operator (i mod nbits). </p> <p>For powers of two, this mod operation is the same as:</p> <ul> <li>(i & (nbits-1)).</li> </ul> <p>Since mod is relatively slow, we use an easily precomputed mod mask to do the mod instead. </p> <p>Referenced by <a class="el" href="antlr3bitset_8c.html#a81089b394a721b00ea10a4be28fc0363">bitMask()</a>.</p> </div> </div> <a class="anchor" id="a0d939dc6a3704111cc7446928b313bd4"></a><!-- doxytag: member="antlr3bitset.h::ANTLR3_BITSET_NIBBLE" ref="a0d939dc6a3704111cc7446928b313bd4" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define ANTLR3_BITSET_NIBBLE   4</td> </tr> </table> </div> <div class="memdoc"> <p>How many bits in a nible of bits. </p> </div> </div> <hr/><h2>Typedef Documentation</h2> <a class="anchor" id="a255fe25a6a70b9014013e5eabbbb120b"></a><!-- doxytag: member="antlr3bitset.h::ANTLR3_BITSET" ref="a255fe25a6a70b9014013e5eabbbb120b" 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___b_i_t_s_e_t__struct.html">ANTLR3_BITSET_struct</a> <a class="el" href="struct_a_n_t_l_r3___b_i_t_s_e_t__struct.html">ANTLR3_BITSET</a></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a86906e51435280af1cbafd2340e91179"></a><!-- doxytag: member="antlr3bitset.h::ANTLR3_BITSET_LIST" ref="a86906e51435280af1cbafd2340e91179" 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___b_i_t_s_e_t___l_i_s_t__struct.html">ANTLR3_BITSET_LIST_struct</a> <a class="el" href="struct_a_n_t_l_r3___b_i_t_s_e_t___l_i_s_t__struct.html">ANTLR3_BITSET_LIST</a></td> </tr> </table> </div> <div class="memdoc"> </div> </div> </div> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="antlr3bitset_8h.html">antlr3bitset.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>