MCPcopy Create free account
hub / github.com/AppleWin/AppleWin / yaml_parser_initialize

Function yaml_parser_initialize

libyaml/src/api.c:176–213  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

174 */
175
176YAML_DECLARE(int)
177yaml_parser_initialize(yaml_parser_t *parser)
178{
179 assert(parser); /* Non-NULL parser object expected. */
180
181 memset(parser, 0, sizeof(yaml_parser_t));
182 if (!BUFFER_INIT(parser, parser->raw_buffer, INPUT_RAW_BUFFER_SIZE))
183 goto error;
184 if (!BUFFER_INIT(parser, parser->buffer, INPUT_BUFFER_SIZE))
185 goto error;
186 if (!QUEUE_INIT(parser, parser->tokens, INITIAL_QUEUE_SIZE, yaml_token_t*))
187 goto error;
188 if (!STACK_INIT(parser, parser->indents, int*))
189 goto error;
190 if (!STACK_INIT(parser, parser->simple_keys, yaml_simple_key_t*))
191 goto error;
192 if (!STACK_INIT(parser, parser->states, yaml_parser_state_t*))
193 goto error;
194 if (!STACK_INIT(parser, parser->marks, yaml_mark_t*))
195 goto error;
196 if (!STACK_INIT(parser, parser->tag_directives, yaml_tag_directive_t*))
197 goto error;
198
199 return 1;
200
201error:
202
203 BUFFER_DEL(parser, parser->raw_buffer);
204 BUFFER_DEL(parser, parser->buffer);
205 QUEUE_DEL(parser, parser->tokens);
206 STACK_DEL(parser, parser->indents);
207 STACK_DEL(parser, parser->simple_keys);
208 STACK_DEL(parser, parser->states);
209 STACK_DEL(parser, parser->marks);
210 STACK_DEL(parser, parser->tag_directives);
211
212 return 0;
213}
214
215/*
216 * Destroy a parser object.

Callers 2

InitParserMethod · 0.85
yaml.hFile · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected