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