group__parser.html 42 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  2. <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
  3. <title>yaml: Parser Definitions</title>
  4. <link href="tabs.css" rel="stylesheet" type="text/css">
  5. <link href="doxygen.css" rel="stylesheet" type="text/css">
  6. </head><body>
  7. <!-- Generated by Doxygen 1.5.8 -->
  8. <div class="navigation" id="top">
  9. <div class="tabs">
  10. <ul>
  11. <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
  12. <li><a href="modules.html"><span>Modules</span></a></li>
  13. <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
  14. <li><a href="files.html"><span>Files</span></a></li>
  15. </ul>
  16. </div>
  17. </div>
  18. <div class="contents">
  19. <h1>Parser Definitions</h1><table border="0" cellpadding="0" cellspacing="0">
  20. <tr><td></td></tr>
  21. <tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
  22. <tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyaml__simple__key__s.html">yaml_simple_key_s</a></td></tr>
  23. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This structure holds information about a potential simple key. <a href="structyaml__simple__key__s.html#_details">More...</a><br></td></tr>
  24. <tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyaml__alias__data__s.html">yaml_alias_data_s</a></td></tr>
  25. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This structure holds aliases data. <a href="structyaml__alias__data__s.html#_details">More...</a><br></td></tr>
  26. <tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structyaml__parser__s.html">yaml_parser_s</a></td></tr>
  27. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The parser structure. <a href="structyaml__parser__s.html#_details">More...</a><br></td></tr>
  28. <tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
  29. <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parser.html#g4982f7e4e001ddb47d2819f38f0cd9d6">yaml_read_handler_t</a> (void *data, unsigned char *buffer, size_t size, size_t *size_read)</td></tr>
  30. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The prototype of a read handler. <a href="#g4982f7e4e001ddb47d2819f38f0cd9d6"></a><br></td></tr>
  31. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ge5570fbb7ab7c8332cd666f3a9c26591"></a><!-- doxytag: member="parser::yaml_simple_key_t" ref="ge5570fbb7ab7c8332cd666f3a9c26591" args="" -->
  32. typedef struct <a class="el" href="structyaml__simple__key__s.html">yaml_simple_key_s</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parser.html#ge5570fbb7ab7c8332cd666f3a9c26591">yaml_simple_key_t</a></td></tr>
  33. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This structure holds information about a potential simple key. <br></td></tr>
  34. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g52b56d3e3cee0f9ba460978802a8c83b"></a><!-- doxytag: member="parser::yaml_parser_state_t" ref="g52b56d3e3cee0f9ba460978802a8c83b" args="" -->
  35. typedef enum <a class="el" href="group__parser.html#gd39c19e7b0df6f542ca97806535b57c5">yaml_parser_state_e</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parser.html#g52b56d3e3cee0f9ba460978802a8c83b">yaml_parser_state_t</a></td></tr>
  36. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The states of the parser. <br></td></tr>
  37. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g1434228b82f5f90d3c8ccda816e9ca9d"></a><!-- doxytag: member="parser::yaml_alias_data_t" ref="g1434228b82f5f90d3c8ccda816e9ca9d" args="" -->
  38. typedef struct <a class="el" href="structyaml__alias__data__s.html">yaml_alias_data_s</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parser.html#g1434228b82f5f90d3c8ccda816e9ca9d">yaml_alias_data_t</a></td></tr>
  39. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This structure holds aliases data. <br></td></tr>
  40. <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct <a class="el" href="structyaml__parser__s.html">yaml_parser_s</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parser.html#gfdc6319cb28a8b8034542b29be85b0c4">yaml_parser_t</a></td></tr>
  41. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The parser structure. <a href="#gfdc6319cb28a8b8034542b29be85b0c4"></a><br></td></tr>
  42. <tr><td colspan="2"><br><h2>Enumerations</h2></td></tr>
  43. <tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parser.html#gd39c19e7b0df6f542ca97806535b57c5">yaml_parser_state_e</a> { <br>
  44. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c5e7b52e16bf002db5cf2944596d8c880e">YAML_PARSE_STREAM_START_STATE</a>,
  45. <br>
  46. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c58255725d67d5bd3574fc7df4db1c6c84">YAML_PARSE_IMPLICIT_DOCUMENT_START_STATE</a>,
  47. <br>
  48. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c5a06d10f700d245caecfc6074a6c52fde">YAML_PARSE_DOCUMENT_START_STATE</a>,
  49. <br>
  50. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c5e444c7652c8029b0ef80068eaaaa3d4d">YAML_PARSE_DOCUMENT_CONTENT_STATE</a>,
  51. <br>
  52. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c5eef06d7f13fa4501146a5b9876c98239">YAML_PARSE_DOCUMENT_END_STATE</a>,
  53. <br>
  54. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c5e1893c0835bacf05cdc21ed181fb75f1">YAML_PARSE_BLOCK_NODE_STATE</a>,
  55. <br>
  56. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c5cbd390af0d3919fe0382d03c284ff3b5">YAML_PARSE_BLOCK_NODE_OR_INDENTLESS_SEQUENCE_STATE</a>,
  57. <br>
  58. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c55bb321f9d18c5b208a71c04bbcbd1d01">YAML_PARSE_FLOW_NODE_STATE</a>,
  59. <br>
  60. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c55bb5f95fc5f1a258ee8e9db0ed25b2d9">YAML_PARSE_BLOCK_SEQUENCE_FIRST_ENTRY_STATE</a>,
  61. <br>
  62. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c58a6cb1f12fe08eee7fc2fa854dbd5b1a">YAML_PARSE_BLOCK_SEQUENCE_ENTRY_STATE</a>,
  63. <br>
  64. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c5f7095f2141cf9887489e832f0ec61fbd">YAML_PARSE_INDENTLESS_SEQUENCE_ENTRY_STATE</a>,
  65. <br>
  66. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c5febcb5bbd67d112d9ecfa633155f0644">YAML_PARSE_BLOCK_MAPPING_FIRST_KEY_STATE</a>,
  67. <br>
  68. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c52df81c86e90b874b415ecb19e72efe45">YAML_PARSE_BLOCK_MAPPING_KEY_STATE</a>,
  69. <br>
  70. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c5e94acf5685fa1538b225413f154465c2">YAML_PARSE_BLOCK_MAPPING_VALUE_STATE</a>,
  71. <br>
  72. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c53f54830989c12cc4a63494df792eeb08">YAML_PARSE_FLOW_SEQUENCE_FIRST_ENTRY_STATE</a>,
  73. <br>
  74. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c50e50f3841eb0d37ad159e64c4a9a1171">YAML_PARSE_FLOW_SEQUENCE_ENTRY_STATE</a>,
  75. <br>
  76. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c5563e11601cf3a1d2a3efc1feb1b696a3">YAML_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_KEY_STATE</a>,
  77. <br>
  78. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c59e5ebb4bee4541e7a7025689c7fc66eb">YAML_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_VALUE_STATE</a>,
  79. <br>
  80. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c5397fd87de9227c64e5308481930b5eeb">YAML_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_END_STATE</a>,
  81. <br>
  82. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c591ac4bbb6629e2b768a3305fb707b7cd">YAML_PARSE_FLOW_MAPPING_FIRST_KEY_STATE</a>,
  83. <br>
  84. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c5924f8eb891dc7527bf4db594a0b1bff8">YAML_PARSE_FLOW_MAPPING_KEY_STATE</a>,
  85. <br>
  86. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c53ba351f6cfba029248ada2c0720246d4">YAML_PARSE_FLOW_MAPPING_VALUE_STATE</a>,
  87. <br>
  88. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c55a8ec0af5c3314c1ad5e0569b6a5d6d2">YAML_PARSE_FLOW_MAPPING_EMPTY_VALUE_STATE</a>,
  89. <br>
  90. &nbsp;&nbsp;<a class="el" href="group__parser.html#ggd39c19e7b0df6f542ca97806535b57c551fd3d45693e2240251996def375a2a2">YAML_PARSE_END_STATE</a>
  91. <br>
  92. }</td></tr>
  93. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The states of the parser. <a href="group__parser.html#gd39c19e7b0df6f542ca97806535b57c5">More...</a><br></td></tr>
  94. <tr><td colspan="2"><br><h2>Functions</h2></td></tr>
  95. <tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parser.html#gcc37ceeb5847e38a3fe24eb0c9b53965">yaml_parser_initialize</a> (<a class="el" href="structyaml__parser__s.html">yaml_parser_t</a> *parser)</td></tr>
  96. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize a parser. <a href="#gcc37ceeb5847e38a3fe24eb0c9b53965"></a><br></td></tr>
  97. <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parser.html#ga27150107c4667c1024ec0651e2ac26b">yaml_parser_delete</a> (<a class="el" href="structyaml__parser__s.html">yaml_parser_t</a> *parser)</td></tr>
  98. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destroy a parser. <a href="#ga27150107c4667c1024ec0651e2ac26b"></a><br></td></tr>
  99. <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parser.html#g08a94762bf5f4c61f72c1da0a407df0d">yaml_parser_set_input_string</a> (<a class="el" href="structyaml__parser__s.html">yaml_parser_t</a> *parser, const unsigned char *input, size_t size)</td></tr>
  100. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set a string input. <a href="#g08a94762bf5f4c61f72c1da0a407df0d"></a><br></td></tr>
  101. <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parser.html#gc3f00f8beb2365b1e4569692d64696b6">yaml_parser_set_input_file</a> (<a class="el" href="structyaml__parser__s.html">yaml_parser_t</a> *parser, FILE *file)</td></tr>
  102. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set a file input. <a href="#gc3f00f8beb2365b1e4569692d64696b6"></a><br></td></tr>
  103. <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parser.html#gbc67581bfa771a3e787d907d6914b8d9">yaml_parser_set_input</a> (<a class="el" href="structyaml__parser__s.html">yaml_parser_t</a> *parser, <a class="el" href="group__parser.html#g4982f7e4e001ddb47d2819f38f0cd9d6">yaml_read_handler_t</a> *handler, void *data)</td></tr>
  104. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set a generic input handler. <a href="#gbc67581bfa771a3e787d907d6914b8d9"></a><br></td></tr>
  105. <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parser.html#g9565b64975570ed34612a19adf02ae6a">yaml_parser_set_encoding</a> (<a class="el" href="structyaml__parser__s.html">yaml_parser_t</a> *parser, <a class="el" href="group__basic.html#g2170996d7e636397b5e6bc0c1b7df7c6">yaml_encoding_t</a> encoding)</td></tr>
  106. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the source encoding. <a href="#g9565b64975570ed34612a19adf02ae6a"></a><br></td></tr>
  107. <tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parser.html#g6c2144f131ebd600a075d4ba654540f7">yaml_parser_scan</a> (<a class="el" href="structyaml__parser__s.html">yaml_parser_t</a> *parser, <a class="el" href="structyaml__token__s.html">yaml_token_t</a> *token)</td></tr>
  108. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Scan the input stream and produce the next token. <a href="#g6c2144f131ebd600a075d4ba654540f7"></a><br></td></tr>
  109. <tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parser.html#g559312fb137533d8b7e07f224fe0ec8f">yaml_parser_parse</a> (<a class="el" href="structyaml__parser__s.html">yaml_parser_t</a> *parser, <a class="el" href="structyaml__event__s.html">yaml_event_t</a> *event)</td></tr>
  110. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Parse the input stream and produce the next parsing event. <a href="#g559312fb137533d8b7e07f224fe0ec8f"></a><br></td></tr>
  111. <tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__parser.html#g9ef7d6e9494766b5880c389bc431d138">yaml_parser_load</a> (<a class="el" href="structyaml__parser__s.html">yaml_parser_t</a> *parser, <a class="el" href="structyaml__document__s.html">yaml_document_t</a> *document)</td></tr>
  112. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Parse the input stream and produce the next YAML document. <a href="#g9ef7d6e9494766b5880c389bc431d138"></a><br></td></tr>
  113. </table>
  114. <hr><h2>Typedef Documentation</h2>
  115. <a class="anchor" name="g4982f7e4e001ddb47d2819f38f0cd9d6"></a><!-- doxytag: member="yaml.h::yaml_read_handler_t" ref="g4982f7e4e001ddb47d2819f38f0cd9d6" args="(void *data, unsigned char *buffer, size_t size, size_t *size_read)" -->
  116. <div class="memitem">
  117. <div class="memproto">
  118. <table class="memname">
  119. <tr>
  120. <td class="memname">typedef int <a class="el" href="group__parser.html#g4982f7e4e001ddb47d2819f38f0cd9d6">yaml_read_handler_t</a>(void *data, unsigned char *buffer, size_t size, size_t *size_read) </td>
  121. </tr>
  122. </table>
  123. </div>
  124. <div class="memdoc">
  125. <p>
  126. The prototype of a read handler.
  127. <p>
  128. The read handler is called when the parser needs to read more bytes from the source. The handler should write not more than <em>size</em> bytes to the <em>buffer</em>. The number of written bytes should be set to the <em>length</em> variable.<p>
  129. <dl compact><dt><b>Parameters:</b></dt><dd>
  130. <table border="0" cellspacing="2" cellpadding="0">
  131. <tr><td valign="top"><tt>[in,out]</tt>&nbsp;</td><td valign="top"><em>data</em>&nbsp;</td><td>A pointer to an application data specified by <a class="el" href="group__parser.html#gbc67581bfa771a3e787d907d6914b8d9" title="Set a generic input handler.">yaml_parser_set_input()</a>. </td></tr>
  132. <tr><td valign="top"><tt>[out]</tt>&nbsp;</td><td valign="top"><em>buffer</em>&nbsp;</td><td>The buffer to write the data from the source. </td></tr>
  133. <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>size</em>&nbsp;</td><td>The size of the buffer. </td></tr>
  134. <tr><td valign="top"><tt>[out]</tt>&nbsp;</td><td valign="top"><em>size_read</em>&nbsp;</td><td>The actual number of bytes read from the source.</td></tr>
  135. </table>
  136. </dl>
  137. <dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, the handler should return <code>1</code>. If the handler failed, the returned value should be <code>0</code>. On EOF, the handler should set the <em>size_read</em> to <code>0</code> and return <code>1</code>. </dd></dl>
  138. </div>
  139. </div><p>
  140. <a class="anchor" name="gfdc6319cb28a8b8034542b29be85b0c4"></a><!-- doxytag: member="yaml.h::yaml_parser_t" ref="gfdc6319cb28a8b8034542b29be85b0c4" args="" -->
  141. <div class="memitem">
  142. <div class="memproto">
  143. <table class="memname">
  144. <tr>
  145. <td class="memname">typedef struct <a class="el" href="structyaml__parser__s.html">yaml_parser_s</a> <a class="el" href="structyaml__parser__s.html">yaml_parser_t</a> </td>
  146. </tr>
  147. </table>
  148. </div>
  149. <div class="memdoc">
  150. <p>
  151. The parser structure.
  152. <p>
  153. All members are internal. Manage the structure using the <code>yaml_parser_</code> family of functions.
  154. </div>
  155. </div><p>
  156. <hr><h2>Enumeration Type Documentation</h2>
  157. <a class="anchor" name="gd39c19e7b0df6f542ca97806535b57c5"></a><!-- doxytag: member="yaml.h::yaml_parser_state_e" ref="gd39c19e7b0df6f542ca97806535b57c5" args="" -->
  158. <div class="memitem">
  159. <div class="memproto">
  160. <table class="memname">
  161. <tr>
  162. <td class="memname">enum <a class="el" href="group__parser.html#gd39c19e7b0df6f542ca97806535b57c5">yaml_parser_state_e</a> </td>
  163. </tr>
  164. </table>
  165. </div>
  166. <div class="memdoc">
  167. <p>
  168. The states of the parser.
  169. <p>
  170. <dl compact><dt><b>Enumerator: </b></dt><dd>
  171. <table border="0" cellspacing="2" cellpadding="0">
  172. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c5e7b52e16bf002db5cf2944596d8c880e"></a><!-- doxytag: member="YAML_PARSE_STREAM_START_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c5e7b52e16bf002db5cf2944596d8c880e" args="" -->YAML_PARSE_STREAM_START_STATE</em>&nbsp;</td><td>
  173. Expect STREAM-START.
  174. <p>
  175. </td></tr>
  176. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c58255725d67d5bd3574fc7df4db1c6c84"></a><!-- doxytag: member="YAML_PARSE_IMPLICIT_DOCUMENT_START_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c58255725d67d5bd3574fc7df4db1c6c84" args="" -->YAML_PARSE_IMPLICIT_DOCUMENT_START_STATE</em>&nbsp;</td><td>
  177. Expect the beginning of an implicit document.
  178. <p>
  179. </td></tr>
  180. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c5a06d10f700d245caecfc6074a6c52fde"></a><!-- doxytag: member="YAML_PARSE_DOCUMENT_START_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c5a06d10f700d245caecfc6074a6c52fde" args="" -->YAML_PARSE_DOCUMENT_START_STATE</em>&nbsp;</td><td>
  181. Expect DOCUMENT-START.
  182. <p>
  183. </td></tr>
  184. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c5e444c7652c8029b0ef80068eaaaa3d4d"></a><!-- doxytag: member="YAML_PARSE_DOCUMENT_CONTENT_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c5e444c7652c8029b0ef80068eaaaa3d4d" args="" -->YAML_PARSE_DOCUMENT_CONTENT_STATE</em>&nbsp;</td><td>
  185. Expect the content of a document.
  186. <p>
  187. </td></tr>
  188. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c5eef06d7f13fa4501146a5b9876c98239"></a><!-- doxytag: member="YAML_PARSE_DOCUMENT_END_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c5eef06d7f13fa4501146a5b9876c98239" args="" -->YAML_PARSE_DOCUMENT_END_STATE</em>&nbsp;</td><td>
  189. Expect DOCUMENT-END.
  190. <p>
  191. </td></tr>
  192. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c5e1893c0835bacf05cdc21ed181fb75f1"></a><!-- doxytag: member="YAML_PARSE_BLOCK_NODE_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c5e1893c0835bacf05cdc21ed181fb75f1" args="" -->YAML_PARSE_BLOCK_NODE_STATE</em>&nbsp;</td><td>
  193. Expect a block node.
  194. <p>
  195. </td></tr>
  196. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c5cbd390af0d3919fe0382d03c284ff3b5"></a><!-- doxytag: member="YAML_PARSE_BLOCK_NODE_OR_INDENTLESS_SEQUENCE_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c5cbd390af0d3919fe0382d03c284ff3b5" args="" -->YAML_PARSE_BLOCK_NODE_OR_INDENTLESS_SEQUENCE_STATE</em>&nbsp;</td><td>
  197. Expect a block node or indentless sequence.
  198. <p>
  199. </td></tr>
  200. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c55bb321f9d18c5b208a71c04bbcbd1d01"></a><!-- doxytag: member="YAML_PARSE_FLOW_NODE_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c55bb321f9d18c5b208a71c04bbcbd1d01" args="" -->YAML_PARSE_FLOW_NODE_STATE</em>&nbsp;</td><td>
  201. Expect a flow node.
  202. <p>
  203. </td></tr>
  204. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c55bb5f95fc5f1a258ee8e9db0ed25b2d9"></a><!-- doxytag: member="YAML_PARSE_BLOCK_SEQUENCE_FIRST_ENTRY_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c55bb5f95fc5f1a258ee8e9db0ed25b2d9" args="" -->YAML_PARSE_BLOCK_SEQUENCE_FIRST_ENTRY_STATE</em>&nbsp;</td><td>
  205. Expect the first entry of a block sequence.
  206. <p>
  207. </td></tr>
  208. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c58a6cb1f12fe08eee7fc2fa854dbd5b1a"></a><!-- doxytag: member="YAML_PARSE_BLOCK_SEQUENCE_ENTRY_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c58a6cb1f12fe08eee7fc2fa854dbd5b1a" args="" -->YAML_PARSE_BLOCK_SEQUENCE_ENTRY_STATE</em>&nbsp;</td><td>
  209. Expect an entry of a block sequence.
  210. <p>
  211. </td></tr>
  212. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c5f7095f2141cf9887489e832f0ec61fbd"></a><!-- doxytag: member="YAML_PARSE_INDENTLESS_SEQUENCE_ENTRY_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c5f7095f2141cf9887489e832f0ec61fbd" args="" -->YAML_PARSE_INDENTLESS_SEQUENCE_ENTRY_STATE</em>&nbsp;</td><td>
  213. Expect an entry of an indentless sequence.
  214. <p>
  215. </td></tr>
  216. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c5febcb5bbd67d112d9ecfa633155f0644"></a><!-- doxytag: member="YAML_PARSE_BLOCK_MAPPING_FIRST_KEY_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c5febcb5bbd67d112d9ecfa633155f0644" args="" -->YAML_PARSE_BLOCK_MAPPING_FIRST_KEY_STATE</em>&nbsp;</td><td>
  217. Expect the first key of a block mapping.
  218. <p>
  219. </td></tr>
  220. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c52df81c86e90b874b415ecb19e72efe45"></a><!-- doxytag: member="YAML_PARSE_BLOCK_MAPPING_KEY_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c52df81c86e90b874b415ecb19e72efe45" args="" -->YAML_PARSE_BLOCK_MAPPING_KEY_STATE</em>&nbsp;</td><td>
  221. Expect a block mapping key.
  222. <p>
  223. </td></tr>
  224. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c5e94acf5685fa1538b225413f154465c2"></a><!-- doxytag: member="YAML_PARSE_BLOCK_MAPPING_VALUE_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c5e94acf5685fa1538b225413f154465c2" args="" -->YAML_PARSE_BLOCK_MAPPING_VALUE_STATE</em>&nbsp;</td><td>
  225. Expect a block mapping value.
  226. <p>
  227. </td></tr>
  228. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c53f54830989c12cc4a63494df792eeb08"></a><!-- doxytag: member="YAML_PARSE_FLOW_SEQUENCE_FIRST_ENTRY_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c53f54830989c12cc4a63494df792eeb08" args="" -->YAML_PARSE_FLOW_SEQUENCE_FIRST_ENTRY_STATE</em>&nbsp;</td><td>
  229. Expect the first entry of a flow sequence.
  230. <p>
  231. </td></tr>
  232. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c50e50f3841eb0d37ad159e64c4a9a1171"></a><!-- doxytag: member="YAML_PARSE_FLOW_SEQUENCE_ENTRY_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c50e50f3841eb0d37ad159e64c4a9a1171" args="" -->YAML_PARSE_FLOW_SEQUENCE_ENTRY_STATE</em>&nbsp;</td><td>
  233. Expect an entry of a flow sequence.
  234. <p>
  235. </td></tr>
  236. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c5563e11601cf3a1d2a3efc1feb1b696a3"></a><!-- doxytag: member="YAML_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_KEY_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c5563e11601cf3a1d2a3efc1feb1b696a3" args="" -->YAML_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_KEY_STATE</em>&nbsp;</td><td>
  237. Expect a key of an ordered mapping.
  238. <p>
  239. </td></tr>
  240. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c59e5ebb4bee4541e7a7025689c7fc66eb"></a><!-- doxytag: member="YAML_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_VALUE_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c59e5ebb4bee4541e7a7025689c7fc66eb" args="" -->YAML_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_VALUE_STATE</em>&nbsp;</td><td>
  241. Expect a value of an ordered mapping.
  242. <p>
  243. </td></tr>
  244. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c5397fd87de9227c64e5308481930b5eeb"></a><!-- doxytag: member="YAML_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_END_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c5397fd87de9227c64e5308481930b5eeb" args="" -->YAML_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_END_STATE</em>&nbsp;</td><td>
  245. Expect the and of an ordered mapping entry.
  246. <p>
  247. </td></tr>
  248. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c591ac4bbb6629e2b768a3305fb707b7cd"></a><!-- doxytag: member="YAML_PARSE_FLOW_MAPPING_FIRST_KEY_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c591ac4bbb6629e2b768a3305fb707b7cd" args="" -->YAML_PARSE_FLOW_MAPPING_FIRST_KEY_STATE</em>&nbsp;</td><td>
  249. Expect the first key of a flow mapping.
  250. <p>
  251. </td></tr>
  252. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c5924f8eb891dc7527bf4db594a0b1bff8"></a><!-- doxytag: member="YAML_PARSE_FLOW_MAPPING_KEY_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c5924f8eb891dc7527bf4db594a0b1bff8" args="" -->YAML_PARSE_FLOW_MAPPING_KEY_STATE</em>&nbsp;</td><td>
  253. Expect a key of a flow mapping.
  254. <p>
  255. </td></tr>
  256. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c53ba351f6cfba029248ada2c0720246d4"></a><!-- doxytag: member="YAML_PARSE_FLOW_MAPPING_VALUE_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c53ba351f6cfba029248ada2c0720246d4" args="" -->YAML_PARSE_FLOW_MAPPING_VALUE_STATE</em>&nbsp;</td><td>
  257. Expect a value of a flow mapping.
  258. <p>
  259. </td></tr>
  260. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c55a8ec0af5c3314c1ad5e0569b6a5d6d2"></a><!-- doxytag: member="YAML_PARSE_FLOW_MAPPING_EMPTY_VALUE_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c55a8ec0af5c3314c1ad5e0569b6a5d6d2" args="" -->YAML_PARSE_FLOW_MAPPING_EMPTY_VALUE_STATE</em>&nbsp;</td><td>
  261. Expect an empty value of a flow mapping.
  262. <p>
  263. </td></tr>
  264. <tr><td valign="top"><em><a class="anchor" name="ggd39c19e7b0df6f542ca97806535b57c551fd3d45693e2240251996def375a2a2"></a><!-- doxytag: member="YAML_PARSE_END_STATE" ref="ggd39c19e7b0df6f542ca97806535b57c551fd3d45693e2240251996def375a2a2" args="" -->YAML_PARSE_END_STATE</em>&nbsp;</td><td>
  265. Expect nothing.
  266. <p>
  267. </td></tr>
  268. </table>
  269. </dl>
  270. </div>
  271. </div><p>
  272. <hr><h2>Function Documentation</h2>
  273. <a class="anchor" name="gcc37ceeb5847e38a3fe24eb0c9b53965"></a><!-- doxytag: member="yaml.h::yaml_parser_initialize" ref="gcc37ceeb5847e38a3fe24eb0c9b53965" args="(yaml_parser_t *parser)" -->
  274. <div class="memitem">
  275. <div class="memproto">
  276. <table class="memname">
  277. <tr>
  278. <td class="memname">int yaml_parser_initialize </td>
  279. <td>(</td>
  280. <td class="paramtype"><a class="el" href="structyaml__parser__s.html">yaml_parser_t</a> *&nbsp;</td>
  281. <td class="paramname"> <em>parser</em> </td>
  282. <td>&nbsp;)&nbsp;</td>
  283. <td></td>
  284. </tr>
  285. </table>
  286. </div>
  287. <div class="memdoc">
  288. <p>
  289. Initialize a parser.
  290. <p>
  291. This function creates a new parser object. An application is responsible for destroying the object using the <a class="el" href="group__parser.html#ga27150107c4667c1024ec0651e2ac26b" title="Destroy a parser.">yaml_parser_delete()</a> function.<p>
  292. <dl compact><dt><b>Parameters:</b></dt><dd>
  293. <table border="0" cellspacing="2" cellpadding="0">
  294. <tr><td valign="top"><tt>[out]</tt>&nbsp;</td><td valign="top"><em>parser</em>&nbsp;</td><td>An empty parser object.</td></tr>
  295. </table>
  296. </dl>
  297. <dl class="return" compact><dt><b>Returns:</b></dt><dd><code>1</code> if the function succeeded, <code>0</code> on error. </dd></dl>
  298. </div>
  299. </div><p>
  300. <a class="anchor" name="ga27150107c4667c1024ec0651e2ac26b"></a><!-- doxytag: member="yaml.h::yaml_parser_delete" ref="ga27150107c4667c1024ec0651e2ac26b" args="(yaml_parser_t *parser)" -->
  301. <div class="memitem">
  302. <div class="memproto">
  303. <table class="memname">
  304. <tr>
  305. <td class="memname">void yaml_parser_delete </td>
  306. <td>(</td>
  307. <td class="paramtype"><a class="el" href="structyaml__parser__s.html">yaml_parser_t</a> *&nbsp;</td>
  308. <td class="paramname"> <em>parser</em> </td>
  309. <td>&nbsp;)&nbsp;</td>
  310. <td></td>
  311. </tr>
  312. </table>
  313. </div>
  314. <div class="memdoc">
  315. <p>
  316. Destroy a parser.
  317. <p>
  318. <dl compact><dt><b>Parameters:</b></dt><dd>
  319. <table border="0" cellspacing="2" cellpadding="0">
  320. <tr><td valign="top"><tt>[in,out]</tt>&nbsp;</td><td valign="top"><em>parser</em>&nbsp;</td><td>A parser object. </td></tr>
  321. </table>
  322. </dl>
  323. </div>
  324. </div><p>
  325. <a class="anchor" name="g08a94762bf5f4c61f72c1da0a407df0d"></a><!-- doxytag: member="yaml.h::yaml_parser_set_input_string" ref="g08a94762bf5f4c61f72c1da0a407df0d" args="(yaml_parser_t *parser, const unsigned char *input, size_t size)" -->
  326. <div class="memitem">
  327. <div class="memproto">
  328. <table class="memname">
  329. <tr>
  330. <td class="memname">void yaml_parser_set_input_string </td>
  331. <td>(</td>
  332. <td class="paramtype"><a class="el" href="structyaml__parser__s.html">yaml_parser_t</a> *&nbsp;</td>
  333. <td class="paramname"> <em>parser</em>, </td>
  334. </tr>
  335. <tr>
  336. <td class="paramkey"></td>
  337. <td></td>
  338. <td class="paramtype">const unsigned char *&nbsp;</td>
  339. <td class="paramname"> <em>input</em>, </td>
  340. </tr>
  341. <tr>
  342. <td class="paramkey"></td>
  343. <td></td>
  344. <td class="paramtype">size_t&nbsp;</td>
  345. <td class="paramname"> <em>size</em></td><td>&nbsp;</td>
  346. </tr>
  347. <tr>
  348. <td></td>
  349. <td>)</td>
  350. <td></td><td></td><td></td>
  351. </tr>
  352. </table>
  353. </div>
  354. <div class="memdoc">
  355. <p>
  356. Set a string input.
  357. <p>
  358. Note that the <em>input</em> pointer must be valid while the <em>parser</em> object exists. The application is responsible for destroing <em>input</em> after destroying the <em>parser</em>.<p>
  359. <dl compact><dt><b>Parameters:</b></dt><dd>
  360. <table border="0" cellspacing="2" cellpadding="0">
  361. <tr><td valign="top"><tt>[in,out]</tt>&nbsp;</td><td valign="top"><em>parser</em>&nbsp;</td><td>A parser object. </td></tr>
  362. <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>input</em>&nbsp;</td><td>A source data. </td></tr>
  363. <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>size</em>&nbsp;</td><td>The length of the source data in bytes. </td></tr>
  364. </table>
  365. </dl>
  366. </div>
  367. </div><p>
  368. <a class="anchor" name="gc3f00f8beb2365b1e4569692d64696b6"></a><!-- doxytag: member="yaml.h::yaml_parser_set_input_file" ref="gc3f00f8beb2365b1e4569692d64696b6" args="(yaml_parser_t *parser, FILE *file)" -->
  369. <div class="memitem">
  370. <div class="memproto">
  371. <table class="memname">
  372. <tr>
  373. <td class="memname">void yaml_parser_set_input_file </td>
  374. <td>(</td>
  375. <td class="paramtype"><a class="el" href="structyaml__parser__s.html">yaml_parser_t</a> *&nbsp;</td>
  376. <td class="paramname"> <em>parser</em>, </td>
  377. </tr>
  378. <tr>
  379. <td class="paramkey"></td>
  380. <td></td>
  381. <td class="paramtype">FILE *&nbsp;</td>
  382. <td class="paramname"> <em>file</em></td><td>&nbsp;</td>
  383. </tr>
  384. <tr>
  385. <td></td>
  386. <td>)</td>
  387. <td></td><td></td><td></td>
  388. </tr>
  389. </table>
  390. </div>
  391. <div class="memdoc">
  392. <p>
  393. Set a file input.
  394. <p>
  395. <em>file</em> should be a file object open for reading. The application is responsible for closing the <em>file</em>.<p>
  396. <dl compact><dt><b>Parameters:</b></dt><dd>
  397. <table border="0" cellspacing="2" cellpadding="0">
  398. <tr><td valign="top"><tt>[in,out]</tt>&nbsp;</td><td valign="top"><em>parser</em>&nbsp;</td><td>A parser object. </td></tr>
  399. <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>file</em>&nbsp;</td><td>An open file. </td></tr>
  400. </table>
  401. </dl>
  402. </div>
  403. </div><p>
  404. <a class="anchor" name="gbc67581bfa771a3e787d907d6914b8d9"></a><!-- doxytag: member="yaml.h::yaml_parser_set_input" ref="gbc67581bfa771a3e787d907d6914b8d9" args="(yaml_parser_t *parser, yaml_read_handler_t *handler, void *data)" -->
  405. <div class="memitem">
  406. <div class="memproto">
  407. <table class="memname">
  408. <tr>
  409. <td class="memname">void yaml_parser_set_input </td>
  410. <td>(</td>
  411. <td class="paramtype"><a class="el" href="structyaml__parser__s.html">yaml_parser_t</a> *&nbsp;</td>
  412. <td class="paramname"> <em>parser</em>, </td>
  413. </tr>
  414. <tr>
  415. <td class="paramkey"></td>
  416. <td></td>
  417. <td class="paramtype"><a class="el" href="group__parser.html#g4982f7e4e001ddb47d2819f38f0cd9d6">yaml_read_handler_t</a> *&nbsp;</td>
  418. <td class="paramname"> <em>handler</em>, </td>
  419. </tr>
  420. <tr>
  421. <td class="paramkey"></td>
  422. <td></td>
  423. <td class="paramtype">void *&nbsp;</td>
  424. <td class="paramname"> <em>data</em></td><td>&nbsp;</td>
  425. </tr>
  426. <tr>
  427. <td></td>
  428. <td>)</td>
  429. <td></td><td></td><td></td>
  430. </tr>
  431. </table>
  432. </div>
  433. <div class="memdoc">
  434. <p>
  435. Set a generic input handler.
  436. <p>
  437. <dl compact><dt><b>Parameters:</b></dt><dd>
  438. <table border="0" cellspacing="2" cellpadding="0">
  439. <tr><td valign="top"><tt>[in,out]</tt>&nbsp;</td><td valign="top"><em>parser</em>&nbsp;</td><td>A parser object. </td></tr>
  440. <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>handler</em>&nbsp;</td><td>A read handler. </td></tr>
  441. <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>data</em>&nbsp;</td><td>Any application data for passing to the read handler. </td></tr>
  442. </table>
  443. </dl>
  444. </div>
  445. </div><p>
  446. <a class="anchor" name="g9565b64975570ed34612a19adf02ae6a"></a><!-- doxytag: member="yaml.h::yaml_parser_set_encoding" ref="g9565b64975570ed34612a19adf02ae6a" args="(yaml_parser_t *parser, yaml_encoding_t encoding)" -->
  447. <div class="memitem">
  448. <div class="memproto">
  449. <table class="memname">
  450. <tr>
  451. <td class="memname">void yaml_parser_set_encoding </td>
  452. <td>(</td>
  453. <td class="paramtype"><a class="el" href="structyaml__parser__s.html">yaml_parser_t</a> *&nbsp;</td>
  454. <td class="paramname"> <em>parser</em>, </td>
  455. </tr>
  456. <tr>
  457. <td class="paramkey"></td>
  458. <td></td>
  459. <td class="paramtype"><a class="el" href="group__basic.html#g2170996d7e636397b5e6bc0c1b7df7c6">yaml_encoding_t</a>&nbsp;</td>
  460. <td class="paramname"> <em>encoding</em></td><td>&nbsp;</td>
  461. </tr>
  462. <tr>
  463. <td></td>
  464. <td>)</td>
  465. <td></td><td></td><td></td>
  466. </tr>
  467. </table>
  468. </div>
  469. <div class="memdoc">
  470. <p>
  471. Set the source encoding.
  472. <p>
  473. <dl compact><dt><b>Parameters:</b></dt><dd>
  474. <table border="0" cellspacing="2" cellpadding="0">
  475. <tr><td valign="top"><tt>[in,out]</tt>&nbsp;</td><td valign="top"><em>parser</em>&nbsp;</td><td>A parser object. </td></tr>
  476. <tr><td valign="top"><tt>[in]</tt>&nbsp;</td><td valign="top"><em>encoding</em>&nbsp;</td><td>The source encoding. </td></tr>
  477. </table>
  478. </dl>
  479. </div>
  480. </div><p>
  481. <a class="anchor" name="g6c2144f131ebd600a075d4ba654540f7"></a><!-- doxytag: member="yaml.h::yaml_parser_scan" ref="g6c2144f131ebd600a075d4ba654540f7" args="(yaml_parser_t *parser, yaml_token_t *token)" -->
  482. <div class="memitem">
  483. <div class="memproto">
  484. <table class="memname">
  485. <tr>
  486. <td class="memname">int yaml_parser_scan </td>
  487. <td>(</td>
  488. <td class="paramtype"><a class="el" href="structyaml__parser__s.html">yaml_parser_t</a> *&nbsp;</td>
  489. <td class="paramname"> <em>parser</em>, </td>
  490. </tr>
  491. <tr>
  492. <td class="paramkey"></td>
  493. <td></td>
  494. <td class="paramtype"><a class="el" href="structyaml__token__s.html">yaml_token_t</a> *&nbsp;</td>
  495. <td class="paramname"> <em>token</em></td><td>&nbsp;</td>
  496. </tr>
  497. <tr>
  498. <td></td>
  499. <td>)</td>
  500. <td></td><td></td><td></td>
  501. </tr>
  502. </table>
  503. </div>
  504. <div class="memdoc">
  505. <p>
  506. Scan the input stream and produce the next token.
  507. <p>
  508. Call the function subsequently to produce a sequence of tokens corresponding to the input stream. The initial token has the type <code>YAML_STREAM_START_TOKEN</code> while the ending token has the type <code>YAML_STREAM_END_TOKEN</code>.<p>
  509. An application is responsible for freeing any buffers associated with the produced token object using the <code>yaml_token_delete</code> function.<p>
  510. An application must not alternate the calls of <a class="el" href="group__parser.html#g6c2144f131ebd600a075d4ba654540f7" title="Scan the input stream and produce the next token.">yaml_parser_scan()</a> with the calls of <a class="el" href="group__parser.html#g559312fb137533d8b7e07f224fe0ec8f" title="Parse the input stream and produce the next parsing event.">yaml_parser_parse()</a> or <a class="el" href="group__parser.html#g9ef7d6e9494766b5880c389bc431d138" title="Parse the input stream and produce the next YAML document.">yaml_parser_load()</a>. Doing this will break the parser.<p>
  511. <dl compact><dt><b>Parameters:</b></dt><dd>
  512. <table border="0" cellspacing="2" cellpadding="0">
  513. <tr><td valign="top"><tt>[in,out]</tt>&nbsp;</td><td valign="top"><em>parser</em>&nbsp;</td><td>A parser object. </td></tr>
  514. <tr><td valign="top"><tt>[out]</tt>&nbsp;</td><td valign="top"><em>token</em>&nbsp;</td><td>An empty token object.</td></tr>
  515. </table>
  516. </dl>
  517. <dl class="return" compact><dt><b>Returns:</b></dt><dd><code>1</code> if the function succeeded, <code>0</code> on error. </dd></dl>
  518. </div>
  519. </div><p>
  520. <a class="anchor" name="g559312fb137533d8b7e07f224fe0ec8f"></a><!-- doxytag: member="yaml.h::yaml_parser_parse" ref="g559312fb137533d8b7e07f224fe0ec8f" args="(yaml_parser_t *parser, yaml_event_t *event)" -->
  521. <div class="memitem">
  522. <div class="memproto">
  523. <table class="memname">
  524. <tr>
  525. <td class="memname">int yaml_parser_parse </td>
  526. <td>(</td>
  527. <td class="paramtype"><a class="el" href="structyaml__parser__s.html">yaml_parser_t</a> *&nbsp;</td>
  528. <td class="paramname"> <em>parser</em>, </td>
  529. </tr>
  530. <tr>
  531. <td class="paramkey"></td>
  532. <td></td>
  533. <td class="paramtype"><a class="el" href="structyaml__event__s.html">yaml_event_t</a> *&nbsp;</td>
  534. <td class="paramname"> <em>event</em></td><td>&nbsp;</td>
  535. </tr>
  536. <tr>
  537. <td></td>
  538. <td>)</td>
  539. <td></td><td></td><td></td>
  540. </tr>
  541. </table>
  542. </div>
  543. <div class="memdoc">
  544. <p>
  545. Parse the input stream and produce the next parsing event.
  546. <p>
  547. Call the function subsequently to produce a sequence of events corresponding to the input stream. The initial event has the type <code>YAML_STREAM_START_EVENT</code> while the ending event has the type <code>YAML_STREAM_END_EVENT</code>.<p>
  548. An application is responsible for freeing any buffers associated with the produced event object using the <a class="el" href="group__events.html#g5330d62ef52856aa53188137cb93a6a1" title="Free any memory allocated for an event object.">yaml_event_delete()</a> function.<p>
  549. An application must not alternate the calls of <a class="el" href="group__parser.html#g559312fb137533d8b7e07f224fe0ec8f" title="Parse the input stream and produce the next parsing event.">yaml_parser_parse()</a> with the calls of <a class="el" href="group__parser.html#g6c2144f131ebd600a075d4ba654540f7" title="Scan the input stream and produce the next token.">yaml_parser_scan()</a> or <a class="el" href="group__parser.html#g9ef7d6e9494766b5880c389bc431d138" title="Parse the input stream and produce the next YAML document.">yaml_parser_load()</a>. Doing this will break the parser.<p>
  550. <dl compact><dt><b>Parameters:</b></dt><dd>
  551. <table border="0" cellspacing="2" cellpadding="0">
  552. <tr><td valign="top"><tt>[in,out]</tt>&nbsp;</td><td valign="top"><em>parser</em>&nbsp;</td><td>A parser object. </td></tr>
  553. <tr><td valign="top"><tt>[out]</tt>&nbsp;</td><td valign="top"><em>event</em>&nbsp;</td><td>An empty event object.</td></tr>
  554. </table>
  555. </dl>
  556. <dl class="return" compact><dt><b>Returns:</b></dt><dd><code>1</code> if the function succeeded, <code>0</code> on error. </dd></dl>
  557. </div>
  558. </div><p>
  559. <a class="anchor" name="g9ef7d6e9494766b5880c389bc431d138"></a><!-- doxytag: member="yaml.h::yaml_parser_load" ref="g9ef7d6e9494766b5880c389bc431d138" args="(yaml_parser_t *parser, yaml_document_t *document)" -->
  560. <div class="memitem">
  561. <div class="memproto">
  562. <table class="memname">
  563. <tr>
  564. <td class="memname">int yaml_parser_load </td>
  565. <td>(</td>
  566. <td class="paramtype"><a class="el" href="structyaml__parser__s.html">yaml_parser_t</a> *&nbsp;</td>
  567. <td class="paramname"> <em>parser</em>, </td>
  568. </tr>
  569. <tr>
  570. <td class="paramkey"></td>
  571. <td></td>
  572. <td class="paramtype"><a class="el" href="structyaml__document__s.html">yaml_document_t</a> *&nbsp;</td>
  573. <td class="paramname"> <em>document</em></td><td>&nbsp;</td>
  574. </tr>
  575. <tr>
  576. <td></td>
  577. <td>)</td>
  578. <td></td><td></td><td></td>
  579. </tr>
  580. </table>
  581. </div>
  582. <div class="memdoc">
  583. <p>
  584. Parse the input stream and produce the next YAML document.
  585. <p>
  586. Call this function subsequently to produce a sequence of documents constituting the input stream.<p>
  587. If the produced document has no root node, it means that the document end has been reached.<p>
  588. An application is responsible for freeing any data associated with the produced document object using the <a class="el" href="group__nodes.html#g2754b1544fb4e110e83fafbc708b0672" title="Delete a YAML document and all its nodes.">yaml_document_delete()</a> function.<p>
  589. An application must not alternate the calls of <a class="el" href="group__parser.html#g9ef7d6e9494766b5880c389bc431d138" title="Parse the input stream and produce the next YAML document.">yaml_parser_load()</a> with the calls of <a class="el" href="group__parser.html#g6c2144f131ebd600a075d4ba654540f7" title="Scan the input stream and produce the next token.">yaml_parser_scan()</a> or <a class="el" href="group__parser.html#g559312fb137533d8b7e07f224fe0ec8f" title="Parse the input stream and produce the next parsing event.">yaml_parser_parse()</a>. Doing this will break the parser.<p>
  590. <dl compact><dt><b>Parameters:</b></dt><dd>
  591. <table border="0" cellspacing="2" cellpadding="0">
  592. <tr><td valign="top"><tt>[in,out]</tt>&nbsp;</td><td valign="top"><em>parser</em>&nbsp;</td><td>A parser object. </td></tr>
  593. <tr><td valign="top"><tt>[out]</tt>&nbsp;</td><td valign="top"><em>document</em>&nbsp;</td><td>An empty document object.</td></tr>
  594. </table>
  595. </dl>
  596. <dl class="return" compact><dt><b>Returns:</b></dt><dd><code>1</code> if the function succeeded, <code>0</code> on error. </dd></dl>
  597. </div>
  598. </div><p>
  599. </div>
  600. <hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 30 22:52:14 2009 for yaml by&nbsp;
  601. <a href="http://www.doxygen.org/index.html">
  602. <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
  603. </body>
  604. </html>