<!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>libdap++: parser.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">libdap++ <span id="projectnumber">Updated for version 3.8.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="namespaces.html"><span>Namespaces</span></a></li> <li><a href="annotated.html"><span>Classes</span></a></li> <li class="current"><a href="files.html"><span>Files</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>File Members</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('parser_8h.html',''); </script> <div id="doc-content"> <div class="header"> <div class="summary"> <a href="#nested-classes">Classes</a> | <a href="#namespaces">Namespaces</a> | <a href="#define-members">Defines</a> | <a href="#func-members">Functions</a> </div> <div class="headertitle"> <h1>parser.h File Reference</h1> </div> </div> <div class="contents"> <div class="textblock"><code>#include "<a class="el" href="Error_8h_source.html">Error.h</a>"</code><br/> </div><div class="textblock"><div class="dynheader"> Include dependency graph for parser.h:</div> <div class="dyncontent"> <div class="center"><img src="parser_8h__incl.png" border="0" usemap="#parser_8h" alt=""/></div> <map name="parser_8h" id="parser_8h"> <area shape="rect" id="node3" href="Error_8h.html" title="Error.h" alt="" coords="117,80,208,107"/></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="parser_8h__dep__incl.png" border="0" usemap="#parser_8hdep" alt=""/></div> <map name="parser_8hdep" id="parser_8hdep"> <area shape="rect" id="node3" href="Operators_8h.html" title="Operators.h" alt="" coords="453,80,584,107"/><area shape="rect" id="node5" href="Byte_8cc.html" title="Byte.cc" alt="" coords="5,155,96,181"/><area shape="rect" id="node7" href="Float32_8cc.html" title="Float32.cc" alt="" coords="120,155,243,181"/><area shape="rect" id="node9" href="Float64_8cc.html" title="Float64.cc" alt="" coords="267,155,389,181"/><area shape="rect" id="node11" href="Int16_8cc.html" title="Int16.cc" alt="" coords="413,155,515,181"/><area shape="rect" id="node13" href="Int32_8cc.html" title="Int32.cc" alt="" coords="539,155,640,181"/><area shape="rect" id="node15" href="Str_8cc.html" title="Str.cc" alt="" coords="664,155,747,181"/><area shape="rect" id="node17" href="UInt16_8cc.html" title="UInt16.cc" alt="" coords="771,155,883,181"/><area shape="rect" id="node19" href="UInt32_8cc.html" title="UInt32.cc" alt="" coords="907,155,1019,181"/><area shape="rect" id="node22" href="ConstraintEvaluator_8cc.html" title="ConstraintEvaluator.cc" alt="" coords="811,80,1053,107"/><area shape="rect" id="node24" href="DAS_8cc.html" title="DAS.cc" alt="" coords="1077,80,1160,107"/><area shape="rect" id="node26" href="DDS_8cc.html" title="DDS.cc" alt="" coords="1184,80,1267,107"/><area shape="rect" id="node28" href="Error_8cc.html" title="Error.cc" alt="" coords="1291,80,1392,107"/><area shape="rect" id="node32" href="GSEClause_8cc.html" title="GSEClause.cc" alt="" coords="1416,80,1557,107"/><area shape="rect" id="node36" href="parser-util_8cc.html" title="parser-util.cc" alt="" coords="1581,80,1744,107"/><area shape="rect" id="node41" href="util_8cc.html" title="util.cc" alt="" coords="1768,80,1859,107"/></map> </div> </div> <p><a href="parser_8h_source.html">Go to the source code of this file.</a></p> <table class="memberdecls"> <tr><td colspan="2"><h2><a name="nested-classes"></a> Classes</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibdap_1_1parser__arg.html">libdap::parser_arg</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Pass parameters by reference to a parser. <a href="structlibdap_1_1parser__arg.html#_details">More...</a><br/></td></tr> <tr><td colspan="2"><h2><a name="namespaces"></a> Namespaces</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacelibdap.html">libdap</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="parser_8h.html#aa93f0eb578d23995850d61f7d61c55c1">FALSE</a>   0</td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="parser_8h.html#abbd59523961c68f6a95e165f82aeed6e">ID_MAX</a>   256</td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="parser_8h.html#aa8cecfc5c5c054d2875c03e77b7be15d">TRUE</a>   1</td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="parser_8h.html#ae29b9eafd525b0fd9b1ecba8c44e5dbb">YY_NO_UNPUT</a>   1</td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="parser_8h.html#a853b3bfad6d2b2ff693dce81182e0c2e">YYDEBUG</a>   1</td></tr> <tr><td colspan="2"><h2><a name="func-members"></a> Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacelibdap.html#a6159f969729b3625cfb42b97b76a29b6">libdap::check_byte</a> (const char *val)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Is the value a valid byte? <a href="#a6159f969729b3625cfb42b97b76a29b6"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacelibdap.html#a8e3daffef90939dcbb46fb6f50b9a40e">libdap::check_float32</a> (const char *val)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Is the value a valid float? <a href="#a8e3daffef90939dcbb46fb6f50b9a40e"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacelibdap.html#a0004b07014e0ece91b7f363e805ceca1">libdap::check_float64</a> (const char *val)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacelibdap.html#a78501bb2d0a23568042d59281ed27072">libdap::check_int16</a> (const char *val)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Is the value a valid integer? <a href="#a78501bb2d0a23568042d59281ed27072"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacelibdap.html#aa9db83b431346800f838b089fafb0066">libdap::check_int32</a> (const char *val)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacelibdap.html#a179d079ad6ee351b8944f44059e3e797">libdap::check_uint16</a> (const char *val)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacelibdap.html#a754cae6f64ff4052f6e694184a68938c">libdap::check_uint32</a> (const char *val)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacelibdap.html#a0e96bac2251d066910b2647830b6959c">libdap::check_url</a> (const char *val)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Is the value a valid URL? <a href="#a0e96bac2251d066910b2647830b6959c"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacelibdap.html#af6521dec3b141314aab525bccfaa7bbe">libdap::is_keyword</a> (string id, const string &keyword)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacelibdap.html#a859f196112f4facae9307314c18be6f1">libdap::save_str</a> (string &dst, const char *src, const int)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacelibdap.html#a88b0cc055e14caf84865c2d5730d4fb3">libdap::save_str</a> (char *dst, const char *src, const int line_num)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Save a string to a temporary variable during the parse. <a href="#a88b0cc055e14caf84865c2d5730d4fb3"></a><br/></td></tr> <tr><td colspan="2"><div class="groupHeader">parse_error</div></td></tr> <tr><td colspan="2"><div class="groupText"><p>Generate error messages for the various parsers.</p> <p><code>parser_error()</code> generates error messages for the various parsers used by libdap. There are two versions of the function, one which takes a <code>const char *message</code> and a <code>const int line_num</code> and writes the message and line number too stderr and a second which takes an additional <code>parser_arg arg</code> parameter and writes the error message into an Error object which is returned to the caller via the <code>arg</code> parameter.</p> <dl class="note"><dt><b>Note:</b></dt><dd>{The second version of this function also accepts a third parameter (<code>const char *context</code>) which can be used to provide an additional line of information beyond what is in the string <code>message</code>.}</dd></dl> <dl class="return"><dt><b>Returns:</b></dt><dd>void </dd></dl> </div></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacelibdap.html#abe3f160643e31cc5a43ab97b389a7d6f">libdap::parse_error</a> (parser_arg *arg, const char *msg, const int line_num, const char *context)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacelibdap.html#a01787175503c9d6d90968046efe46e19">libdap::parse_error</a> (const string &msg, const int line_num, const char *context)</td></tr> </table> <hr/><h2>Define Documentation</h2> <a class="anchor" id="aa93f0eb578d23995850d61f7d61c55c1"></a><!-- doxytag: member="parser.h::FALSE" ref="aa93f0eb578d23995850d61f7d61c55c1" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define FALSE   0</td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="parser_8h_source.html#l00051">51</a> of file <a class="el" href="parser_8h_source.html">parser.h</a>.</p> </div> </div> <a class="anchor" id="abbd59523961c68f6a95e165f82aeed6e"></a><!-- doxytag: member="parser.h::ID_MAX" ref="abbd59523961c68f6a95e165f82aeed6e" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define ID_MAX   256</td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="parser_8h_source.html#l00047">47</a> of file <a class="el" href="parser_8h_source.html">parser.h</a>.</p> </div> </div> <a class="anchor" id="aa8cecfc5c5c054d2875c03e77b7be15d"></a><!-- doxytag: member="parser.h::TRUE" ref="aa8cecfc5c5c054d2875c03e77b7be15d" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define TRUE   1</td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="parser_8h_source.html#l00050">50</a> of file <a class="el" href="parser_8h_source.html">parser.h</a>.</p> <p>Referenced by <a class="el" href="parser-util_8cc_source.html#l00183">libdap::check_byte()</a>, <a class="el" href="parser-util_8cc_source.html#l00308">libdap::check_float32()</a>, <a class="el" href="parser-util_8cc_source.html#l00341">libdap::check_float64()</a>, <a class="el" href="parser-util_8cc_source.html#l00209">libdap::check_int16()</a>, <a class="el" href="parser-util_8cc_source.html#l00241">libdap::check_int32()</a>, <a class="el" href="parser-util_8cc_source.html#l00225">libdap::check_uint16()</a>, <a class="el" href="parser-util_8cc_source.html#l00269">libdap::check_uint32()</a>, and <a class="el" href="parser-util_8cc_source.html#l00378">libdap::check_url()</a>.</p> </div> </div> <a class="anchor" id="ae29b9eafd525b0fd9b1ecba8c44e5dbb"></a><!-- doxytag: member="parser.h::YY_NO_UNPUT" ref="ae29b9eafd525b0fd9b1ecba8c44e5dbb" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define YY_NO_UNPUT   1</td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="parser_8h_source.html#l00045">45</a> of file <a class="el" href="parser_8h_source.html">parser.h</a>.</p> </div> </div> <a class="anchor" id="a853b3bfad6d2b2ff693dce81182e0c2e"></a><!-- doxytag: member="parser.h::YYDEBUG" ref="a853b3bfad6d2b2ff693dce81182e0c2e" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define YYDEBUG   1</td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="parser_8h_source.html#l00043">43</a> of file <a class="el" href="parser_8h_source.html">parser.h</a>.</p> </div> </div> </div> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="parser_8h.html">parser.h</a> </li> <li class="footer">Generated on Tue Feb 8 2011 for libdap++ 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>