Ruby  2.4.2p198(2017-09-14revision59899)
Data Structures | Macros | Functions
yaml_private.h File Reference
#include <yaml.h>
#include <assert.h>
#include <limits.h>
#include <stddef.h>
#include <stdint.h>
Include dependency graph for yaml_private.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  yaml_string_t
 

Macros

#define INPUT_RAW_BUFFER_SIZE   16384
 
#define INPUT_BUFFER_SIZE   (INPUT_RAW_BUFFER_SIZE*3)
 
#define OUTPUT_BUFFER_SIZE   16384
 
#define OUTPUT_RAW_BUFFER_SIZE   (OUTPUT_BUFFER_SIZE*2+2)
 
#define INITIAL_STACK_SIZE   16
 
#define INITIAL_QUEUE_SIZE   16
 
#define INITIAL_STRING_SIZE   16
 
#define BUFFER_INIT(context, buffer, size)
 
#define BUFFER_DEL(context, buffer)
 
#define NULL_STRING   { NULL, NULL, NULL }
 
#define STRING(string, length)   { (string), (string)+(length), (string) }
 
#define STRING_ASSIGN(value, string, length)
 
#define STRING_INIT(context, string, size)
 
#define STRING_DEL(context, string)
 
#define STRING_EXTEND(context, string)
 
#define CLEAR(context, string)
 
#define JOIN(context, string_a, string_b)
 
#define CHECK_AT(string, octet, offset)   ((string).pointer[offset] == (yaml_char_t)(octet))
 
#define CHECK(string, octet)   CHECK_AT((string),(octet),0)
 
#define IS_ALPHA_AT(string, offset)
 
#define IS_ALPHA(string)   IS_ALPHA_AT((string),0)
 
#define IS_DIGIT_AT(string, offset)
 
#define IS_DIGIT(string)   IS_DIGIT_AT((string),0)
 
#define AS_DIGIT_AT(string, offset)   ((string).pointer[offset] - (yaml_char_t) '0')
 
#define AS_DIGIT(string)   AS_DIGIT_AT((string),0)
 
#define IS_HEX_AT(string, offset)
 
#define IS_HEX(string)   IS_HEX_AT((string),0)
 
#define AS_HEX_AT(string, offset)
 
#define AS_HEX(string)   AS_HEX_AT((string),0)
 
#define IS_ASCII_AT(string, offset)   ((string).pointer[offset] <= (yaml_char_t) '\x7F')
 
#define IS_ASCII(string)   IS_ASCII_AT((string),0)
 
#define IS_PRINTABLE_AT(string, offset)
 
#define IS_PRINTABLE(string)   IS_PRINTABLE_AT((string),0)
 
#define IS_Z_AT(string, offset)   CHECK_AT((string),'\0',(offset))
 
#define IS_Z(string)   IS_Z_AT((string),0)
 
#define IS_BOM_AT(string, offset)
 
#define IS_BOM(string)   IS_BOM_AT(string,0)
 
#define IS_SPACE_AT(string, offset)   CHECK_AT((string),' ',(offset))
 
#define IS_SPACE(string)   IS_SPACE_AT((string),0)
 
#define IS_TAB_AT(string, offset)   CHECK_AT((string),'\t',(offset))
 
#define IS_TAB(string)   IS_TAB_AT((string),0)
 
#define IS_BLANK_AT(string, offset)   (IS_SPACE_AT((string),(offset)) || IS_TAB_AT((string),(offset)))
 
#define IS_BLANK(string)   IS_BLANK_AT((string),0)
 
#define IS_BREAK_AT(string, offset)
 
#define IS_BREAK(string)   IS_BREAK_AT((string),0)
 
#define IS_CRLF_AT(string, offset)   (CHECK_AT((string),'\r',(offset)) && CHECK_AT((string),'\n',(offset)+1))
 
#define IS_CRLF(string)   IS_CRLF_AT((string),0)
 
#define IS_BREAKZ_AT(string, offset)   (IS_BREAK_AT((string),(offset)) || IS_Z_AT((string),(offset)))
 
#define IS_BREAKZ(string)   IS_BREAKZ_AT((string),0)
 
#define IS_SPACEZ_AT(string, offset)   (IS_SPACE_AT((string),(offset)) || IS_BREAKZ_AT((string),(offset)))
 
#define IS_SPACEZ(string)   IS_SPACEZ_AT((string),0)
 
#define IS_BLANKZ_AT(string, offset)   (IS_BLANK_AT((string),(offset)) || IS_BREAKZ_AT((string),(offset)))
 
#define IS_BLANKZ(string)   IS_BLANKZ_AT((string),0)
 
#define WIDTH_AT(string, offset)
 
#define WIDTH(string)   WIDTH_AT((string),0)
 
#define MOVE(string)   ((string).pointer += WIDTH((string)))
 
#define COPY(string_a, string_b)
 
#define STACK_INIT(context, stack, size)
 
#define STACK_DEL(context, stack)
 
#define STACK_EMPTY(context, stack)   ((stack).start == (stack).top)
 
#define STACK_LIMIT(context, stack, size)
 
#define PUSH(context, stack, value)
 
#define POP(context, stack)   (*(--(stack).top))
 
#define QUEUE_INIT(context, queue, size)
 
#define QUEUE_DEL(context, queue)
 
#define QUEUE_EMPTY(context, queue)   ((queue).head == (queue).tail)
 
#define ENQUEUE(context, queue, value)
 
#define DEQUEUE(context, queue)   (*((queue).head++))
 
#define QUEUE_INSERT(context, queue, index, value)
 
#define TOKEN_INIT(token, token_type, token_start_mark, token_end_mark)
 
#define STREAM_START_TOKEN_INIT(token, token_encoding, start_mark, end_mark)
 
#define STREAM_END_TOKEN_INIT(token, start_mark, end_mark)   (TOKEN_INIT((token),YAML_STREAM_END_TOKEN,(start_mark),(end_mark)))
 
#define ALIAS_TOKEN_INIT(token, token_value, start_mark, end_mark)
 
#define ANCHOR_TOKEN_INIT(token, token_value, start_mark, end_mark)
 
#define TAG_TOKEN_INIT(token, token_handle, token_suffix, start_mark, end_mark)
 
#define SCALAR_TOKEN_INIT(token, token_value, token_length, token_style, start_mark, end_mark)
 
#define VERSION_DIRECTIVE_TOKEN_INIT(token, token_major, token_minor, start_mark, end_mark)
 
#define TAG_DIRECTIVE_TOKEN_INIT(token, token_handle, token_prefix, start_mark, end_mark)
 
#define EVENT_INIT(event, event_type, event_start_mark, event_end_mark)
 
#define STREAM_START_EVENT_INIT(event, event_encoding, start_mark, end_mark)
 
#define STREAM_END_EVENT_INIT(event, start_mark, end_mark)   (EVENT_INIT((event),YAML_STREAM_END_EVENT,(start_mark),(end_mark)))
 
#define DOCUMENT_START_EVENT_INIT(event, event_version_directive, event_tag_directives_start, event_tag_directives_end, event_implicit, start_mark, end_mark)
 
#define DOCUMENT_END_EVENT_INIT(event, event_implicit, start_mark, end_mark)
 
#define ALIAS_EVENT_INIT(event, event_anchor, start_mark, end_mark)
 
#define SCALAR_EVENT_INIT(event, event_anchor, event_tag, event_value, event_length, event_plain_implicit, event_quoted_implicit, event_style, start_mark, end_mark)
 
#define SEQUENCE_START_EVENT_INIT(event, event_anchor, event_tag, event_implicit, event_style, start_mark, end_mark)
 
#define SEQUENCE_END_EVENT_INIT(event, start_mark, end_mark)   (EVENT_INIT((event),YAML_SEQUENCE_END_EVENT,(start_mark),(end_mark)))
 
#define MAPPING_START_EVENT_INIT(event, event_anchor, event_tag, event_implicit, event_style, start_mark, end_mark)
 
#define MAPPING_END_EVENT_INIT(event, start_mark, end_mark)   (EVENT_INIT((event),YAML_MAPPING_END_EVENT,(start_mark),(end_mark)))
 
#define DOCUMENT_INIT(document, document_nodes_start, document_nodes_end, document_version_directive, document_tag_directives_start, document_tag_directives_end, document_start_implicit, document_end_implicit, document_start_mark, document_end_mark)
 
#define NODE_INIT(node, node_type, node_tag, node_start_mark, node_end_mark)
 
#define SCALAR_NODE_INIT(node, node_tag, node_value, node_length, node_style, start_mark, end_mark)
 
#define SEQUENCE_NODE_INIT(node, node_tag, node_items_start, node_items_end, node_style, start_mark, end_mark)
 
#define MAPPING_NODE_INIT(node, node_tag, node_pairs_start, node_pairs_end, node_style, start_mark, end_mark)
 

Functions

 yaml_malloc (size_t size)
 
 yaml_realloc (void *ptr, size_t size)
 
 yaml_free (void *ptr)
 
 yaml_strdup (const yaml_char_t *)
 
 yaml_parser_update_buffer (yaml_parser_t *parser, size_t length)
 
 yaml_parser_fetch_more_tokens (yaml_parser_t *parser)
 
 yaml_string_extend (yaml_char_t **start, yaml_char_t **pointer, yaml_char_t **end)
 
 yaml_string_join (yaml_char_t **a_start, yaml_char_t **a_pointer, yaml_char_t **a_end, yaml_char_t **b_start, yaml_char_t **b_pointer, yaml_char_t **b_end)
 
 yaml_stack_extend (void **start, void **top, void **end)
 
 yaml_queue_extend (void **start, void **head, void **tail, void **end)
 

Macro Definition Documentation

◆ ALIAS_EVENT_INIT

#define ALIAS_EVENT_INIT (   event,
  event_anchor,
  start_mark,
  end_mark 
)
Value:
(EVENT_INIT((event),YAML_ALIAS_EVENT,(start_mark),(end_mark)), \
(event).data.alias.anchor = (event_anchor))
#define EVENT_INIT(event, event_type, event_start_mark, event_end_mark)
Definition: yaml_private.h:548
An ALIAS event.
Definition: yaml.h:368

Definition at line 573 of file yaml_private.h.

Referenced by yaml_alias_event_initialize(), yaml_emitter_dump_alias(), and yaml_parser_parse_node().

◆ ALIAS_TOKEN_INIT

#define ALIAS_TOKEN_INIT (   token,
  token_value,
  start_mark,
  end_mark 
)
Value:
(TOKEN_INIT((token),YAML_ALIAS_TOKEN,(start_mark),(end_mark)), \
(token).data.alias.value = (token_value))
unsigned short token
Definition: id.c:36
An ALIAS token.
Definition: yaml.h:257
#define TOKEN_INIT(token, token_type, token_start_mark, token_end_mark)
Definition: yaml_private.h:502

Definition at line 515 of file yaml_private.h.

Referenced by yaml_parser_scan_anchor().

◆ ANCHOR_TOKEN_INIT

#define ANCHOR_TOKEN_INIT (   token,
  token_value,
  start_mark,
  end_mark 
)
Value:
(TOKEN_INIT((token),YAML_ANCHOR_TOKEN,(start_mark),(end_mark)), \
(token).data.anchor.value = (token_value))
unsigned short token
Definition: id.c:36
#define TOKEN_INIT(token, token_type, token_start_mark, token_end_mark)
Definition: yaml_private.h:502
An ANCHOR token.
Definition: yaml.h:259

Definition at line 519 of file yaml_private.h.

Referenced by yaml_parser_scan_anchor().

◆ AS_DIGIT

#define AS_DIGIT (   string)    AS_DIGIT_AT((string),0)

◆ AS_DIGIT_AT

#define AS_DIGIT_AT (   string,
  offset 
)    ((string).pointer[offset] - (yaml_char_t) '0')

Definition at line 217 of file yaml_private.h.

◆ AS_HEX

#define AS_HEX (   string)    AS_HEX_AT((string),0)

Definition at line 249 of file yaml_private.h.

◆ AS_HEX_AT

#define AS_HEX_AT (   string,
  offset 
)
Value:
(((string).pointer[offset] >= (yaml_char_t) 'A' && \
(string).pointer[offset] <= (yaml_char_t) 'F') ? \
((string).pointer[offset] - (yaml_char_t) 'A' + 10) : \
((string).pointer[offset] >= (yaml_char_t) 'a' && \
(string).pointer[offset] <= (yaml_char_t) 'f') ? \
((string).pointer[offset] - (yaml_char_t) 'a' + 10) : \
((string).pointer[offset] - (yaml_char_t) '0'))
unsigned char yaml_char_t
The character type (UTF-8 octet).
Definition: yaml.h:78

Definition at line 240 of file yaml_private.h.

Referenced by yaml_parser_scan_flow_scalar(), and yaml_parser_scan_uri_escapes().

◆ BUFFER_DEL

#define BUFFER_DEL (   context,
  buffer 
)
Value:
(yaml_free((buffer).start), \
(buffer).start = (buffer).pointer = (buffer).end = 0)
yaml_free(void *ptr)
Definition: api.c:51

Definition at line 103 of file yaml_private.h.

Referenced by yaml_emitter_delete(), yaml_emitter_initialize(), yaml_parser_delete(), and yaml_parser_initialize().

◆ BUFFER_INIT

#define BUFFER_INIT (   context,
  buffer,
  size 
)
Value:
(((buffer).start = yaml_malloc(size)) ? \
((buffer).last = (buffer).pointer = (buffer).start, \
(buffer).end = (buffer).start+(size), \
1) : \
((context)->error = YAML_MEMORY_ERROR, \
0))
Cannot allocate or reallocate a block of memory.
Definition: yaml.h:127
yaml_malloc(size_t size)
Definition: api.c:31
int size
Definition: encoding.c:57

Definition at line 95 of file yaml_private.h.

Referenced by yaml_emitter_initialize(), and yaml_parser_initialize().

◆ CHECK

#define CHECK (   string,
  octet 
)    CHECK_AT((string),(octet),0)

Definition at line 184 of file yaml_private.h.

◆ CHECK_AT

#define CHECK_AT (   string,
  octet,
  offset 
)    ((string).pointer[offset] == (yaml_char_t)(octet))

◆ CLEAR

#define CLEAR (   context,
  string 
)
Value:
((string).pointer = (string).start, \
memset((string).start, 0, (string).end-(string).start))

Definition at line 156 of file yaml_private.h.

Referenced by yaml_parser_scan_block_scalar(), yaml_parser_scan_flow_scalar(), and yaml_parser_scan_plain_scalar().

◆ COPY

#define COPY (   string_a,
  string_b 
)
Value:
((*(string_b).pointer & 0x80) == 0x00 ? \
(*((string_a).pointer++) = *((string_b).pointer++)) : \
(*(string_b).pointer & 0xE0) == 0xC0 ? \
(*((string_a).pointer++) = *((string_b).pointer++), \
*((string_a).pointer++) = *((string_b).pointer++)) : \
(*(string_b).pointer & 0xF0) == 0xE0 ? \
(*((string_a).pointer++) = *((string_b).pointer++), \
*((string_a).pointer++) = *((string_b).pointer++), \
*((string_a).pointer++) = *((string_b).pointer++)) : \
(*(string_b).pointer & 0xF8) == 0xF0 ? \
(*((string_a).pointer++) = *((string_b).pointer++), \
*((string_a).pointer++) = *((string_b).pointer++), \
*((string_a).pointer++) = *((string_b).pointer++), \
*((string_a).pointer++) = *((string_b).pointer++)) : 0)

Definition at line 400 of file yaml_private.h.

◆ DEQUEUE

#define DEQUEUE (   context,
  queue 
)    (*((queue).head++))

◆ DOCUMENT_END_EVENT_INIT

#define DOCUMENT_END_EVENT_INIT (   event,
  event_implicit,
  start_mark,
  end_mark 
)
Value:
(EVENT_INIT((event),YAML_DOCUMENT_END_EVENT,(start_mark),(end_mark)), \
(event).data.document_end.implicit = (event_implicit))
#define EVENT_INIT(event, event_type, event_start_mark, event_end_mark)
Definition: yaml_private.h:548
A DOCUMENT-END event.
Definition: yaml.h:365

Definition at line 569 of file yaml_private.h.

Referenced by yaml_document_end_event_initialize(), yaml_emitter_dump(), and yaml_parser_parse_document_end().

◆ DOCUMENT_INIT

#define DOCUMENT_INIT (   document,
  document_nodes_start,
  document_nodes_end,
  document_version_directive,
  document_tag_directives_start,
  document_tag_directives_end,
  document_start_implicit,
  document_end_implicit,
  document_start_mark,
  document_end_mark 
)
Value:
(memset(&(document), 0, sizeof(yaml_document_t)), \
(document).nodes.start = (document_nodes_start), \
(document).nodes.end = (document_nodes_end), \
(document).nodes.top = (document_nodes_start), \
(document).version_directive = (document_version_directive), \
(document).tag_directives.start = (document_tag_directives_start), \
(document).tag_directives.end = (document_tag_directives_end), \
(document).start_implicit = (document_start_implicit), \
(document).end_implicit = (document_end_implicit), \
(document).start_mark = (document_start_mark), \
(document).end_mark = (document_end_mark))
The document structure.
Definition: yaml.h:778

Definition at line 614 of file yaml_private.h.

Referenced by yaml_document_initialize().

◆ DOCUMENT_START_EVENT_INIT

#define DOCUMENT_START_EVENT_INIT (   event,
  event_version_directive,
  event_tag_directives_start,
  event_tag_directives_end,
  event_implicit,
  start_mark,
  end_mark 
)
Value:
(EVENT_INIT((event),YAML_DOCUMENT_START_EVENT,(start_mark),(end_mark)), \
(event).data.document_start.version_directive = (event_version_directive), \
(event).data.document_start.tag_directives.start = (event_tag_directives_start), \
(event).data.document_start.tag_directives.end = (event_tag_directives_end), \
(event).data.document_start.implicit = (event_implicit))
#define EVENT_INIT(event, event_type, event_start_mark, event_end_mark)
Definition: yaml_private.h:548
A DOCUMENT-START event.
Definition: yaml.h:363

Definition at line 561 of file yaml_private.h.

Referenced by yaml_document_start_event_initialize(), yaml_emitter_dump(), and yaml_parser_parse_document_start().

◆ ENQUEUE

#define ENQUEUE (   context,
  queue,
  value 
)
Value:
(((queue).tail != (queue).end \
|| yaml_queue_extend((void **)&(queue).start, (void **)&(queue).head, \
(void **)&(queue).tail, (void **)&(queue).end)) ? \
(*((queue).tail++) = value, \
1) : \
((context)->error = YAML_MEMORY_ERROR, \
0))
Cannot allocate or reallocate a block of memory.
Definition: yaml.h:127
yaml_queue_extend(void **start, void **head, void **tail, void **end)
Definition: api.c:136

Definition at line 474 of file yaml_private.h.

Referenced by yaml_emitter_emit(), yaml_parser_fetch_anchor(), yaml_parser_fetch_block_entry(), yaml_parser_fetch_block_scalar(), yaml_parser_fetch_directive(), yaml_parser_fetch_document_indicator(), yaml_parser_fetch_flow_collection_end(), yaml_parser_fetch_flow_collection_start(), yaml_parser_fetch_flow_entry(), yaml_parser_fetch_flow_scalar(), yaml_parser_fetch_key(), yaml_parser_fetch_plain_scalar(), yaml_parser_fetch_stream_end(), yaml_parser_fetch_stream_start(), yaml_parser_fetch_tag(), yaml_parser_fetch_value(), yaml_parser_roll_indent(), and yaml_parser_unroll_indent().

◆ EVENT_INIT

#define EVENT_INIT (   event,
  event_type,
  event_start_mark,
  event_end_mark 
)
Value:
(memset(&(event), 0, sizeof(yaml_event_t)), \
(event).type = (event_type), \
(event).start_mark = (event_start_mark), \
(event).end_mark = (event_end_mark))
The event structure.
Definition: yaml.h:384

Definition at line 548 of file yaml_private.h.

◆ INITIAL_QUEUE_SIZE

#define INITIAL_QUEUE_SIZE   16

Definition at line 88 of file yaml_private.h.

Referenced by yaml_emitter_initialize(), and yaml_parser_initialize().

◆ INITIAL_STACK_SIZE

#define INITIAL_STACK_SIZE   16

◆ INITIAL_STRING_SIZE

#define INITIAL_STRING_SIZE   16

◆ INPUT_BUFFER_SIZE

#define INPUT_BUFFER_SIZE   (INPUT_RAW_BUFFER_SIZE*3)

Definition at line 67 of file yaml_private.h.

Referenced by yaml_parser_initialize().

◆ INPUT_RAW_BUFFER_SIZE

#define INPUT_RAW_BUFFER_SIZE   16384

Definition at line 59 of file yaml_private.h.

Referenced by yaml_parser_initialize().

◆ IS_ALPHA

#define IS_ALPHA (   string)    IS_ALPHA_AT((string),0)

◆ IS_ALPHA_AT

#define IS_ALPHA_AT (   string,
  offset 
)
Value:
(((string).pointer[offset] >= (yaml_char_t) '0' && \
(string).pointer[offset] <= (yaml_char_t) '9') || \
((string).pointer[offset] >= (yaml_char_t) 'A' && \
(string).pointer[offset] <= (yaml_char_t) 'Z') || \
((string).pointer[offset] >= (yaml_char_t) 'a' && \
(string).pointer[offset] <= (yaml_char_t) 'z') || \
(string).pointer[offset] == '_' || \
(string).pointer[offset] == '-')
unsigned char yaml_char_t
The character type (UTF-8 octet).
Definition: yaml.h:78

Definition at line 191 of file yaml_private.h.

◆ IS_ASCII

#define IS_ASCII (   string)    IS_ASCII_AT((string),0)

◆ IS_ASCII_AT

#define IS_ASCII_AT (   string,
  offset 
)    ((string).pointer[offset] <= (yaml_char_t) '\x7F')

Definition at line 255 of file yaml_private.h.

◆ IS_BLANK

#define IS_BLANK (   string)    IS_BLANK_AT((string),0)

◆ IS_BLANK_AT

#define IS_BLANK_AT (   string,
  offset 
)    (IS_SPACE_AT((string),(offset)) || IS_TAB_AT((string),(offset)))

Definition at line 323 of file yaml_private.h.

Referenced by yaml_parser_fetch_next_token().

◆ IS_BLANKZ

#define IS_BLANKZ (   string)    IS_BLANKZ_AT((string),0)

◆ IS_BLANKZ_AT

#define IS_BLANKZ_AT (   string,
  offset 
)    (IS_BLANK_AT((string),(offset)) || IS_BREAKZ_AT((string),(offset)))

◆ IS_BOM

#define IS_BOM (   string)    IS_BOM_AT(string,0)

◆ IS_BOM_AT

#define IS_BOM_AT (   string,
  offset 
)
Value:
(CHECK_AT((string),'\xEF',(offset)) \
&& CHECK_AT((string),'\xBB',(offset)+1) \
&& CHECK_AT((string),'\xBF',(offset)+2)) /* BOM (#xFEFF) */
#define CHECK_AT(string, octet, offset)
Definition: yaml_private.h:177

Definition at line 296 of file yaml_private.h.

◆ IS_BREAK

#define IS_BREAK (   string)    IS_BREAK_AT((string),0)

◆ IS_BREAK_AT

#define IS_BREAK_AT (   string,
  offset 
)
Value:
(CHECK_AT((string),'\r',(offset)) /* CR (#xD)*/ \
|| CHECK_AT((string),'\n',(offset)) /* LF (#xA) */ \
|| (CHECK_AT((string),'\xC2',(offset)) \
&& CHECK_AT((string),'\x85',(offset)+1)) /* NEL (#x85) */ \
|| (CHECK_AT((string),'\xE2',(offset)) \
&& CHECK_AT((string),'\x80',(offset)+1) \
&& CHECK_AT((string),'\xA8',(offset)+2)) /* LS (#x2028) */ \
|| (CHECK_AT((string),'\xE2',(offset)) \
&& CHECK_AT((string),'\x80',(offset)+1) \
&& CHECK_AT((string),'\xA9',(offset)+2))) /* PS (#x2029) */
#define CHECK_AT(string, octet, offset)
Definition: yaml_private.h:177

Definition at line 332 of file yaml_private.h.

Referenced by yaml_emitter_write_folded_scalar(), and yaml_parser_scan_flow_scalar().

◆ IS_BREAKZ

#define IS_BREAKZ (   string)    IS_BREAKZ_AT((string),0)

◆ IS_BREAKZ_AT

#define IS_BREAKZ_AT (   string,
  offset 
)    (IS_BREAK_AT((string),(offset)) || IS_Z_AT((string),(offset)))

Definition at line 355 of file yaml_private.h.

◆ IS_CRLF

#define IS_CRLF (   string)    IS_CRLF_AT((string),0)

Definition at line 349 of file yaml_private.h.

◆ IS_CRLF_AT

#define IS_CRLF_AT (   string,
  offset 
)    (CHECK_AT((string),'\r',(offset)) && CHECK_AT((string),'\n',(offset)+1))

Definition at line 346 of file yaml_private.h.

◆ IS_DIGIT

#define IS_DIGIT (   string)    IS_DIGIT_AT((string),0)

◆ IS_DIGIT_AT

#define IS_DIGIT_AT (   string,
  offset 
)
Value:
(((string).pointer[offset] >= (yaml_char_t) '0' && \
(string).pointer[offset] <= (yaml_char_t) '9'))
unsigned char yaml_char_t
The character type (UTF-8 octet).
Definition: yaml.h:78

Definition at line 207 of file yaml_private.h.

◆ IS_HEX

#define IS_HEX (   string)    IS_HEX_AT((string),0)

Definition at line 234 of file yaml_private.h.

◆ IS_HEX_AT

#define IS_HEX_AT (   string,
  offset 
)
Value:
(((string).pointer[offset] >= (yaml_char_t) '0' && \
(string).pointer[offset] <= (yaml_char_t) '9') || \
((string).pointer[offset] >= (yaml_char_t) 'A' && \
(string).pointer[offset] <= (yaml_char_t) 'F') || \
((string).pointer[offset] >= (yaml_char_t) 'a' && \
(string).pointer[offset] <= (yaml_char_t) 'f'))
unsigned char yaml_char_t
The character type (UTF-8 octet).
Definition: yaml.h:78

Definition at line 226 of file yaml_private.h.

Referenced by yaml_parser_scan_flow_scalar(), and yaml_parser_scan_uri_escapes().

◆ IS_PRINTABLE

#define IS_PRINTABLE (   string)    IS_PRINTABLE_AT((string),0)

◆ IS_PRINTABLE_AT

#define IS_PRINTABLE_AT (   string,
  offset 
)
Value:
(((string).pointer[offset] == 0x0A) /* . == #x0A */ \
|| ((string).pointer[offset] >= 0x20 /* #x20 <= . <= #x7E */ \
&& (string).pointer[offset] <= 0x7E) \
|| ((string).pointer[offset] == 0xC2 /* #0xA0 <= . <= #xD7FF */ \
&& (string).pointer[offset+1] >= 0xA0) \
|| ((string).pointer[offset] > 0xC2 \
&& (string).pointer[offset] < 0xED) \
|| ((string).pointer[offset] == 0xED \
&& (string).pointer[offset+1] < 0xA0) \
|| ((string).pointer[offset] == 0xEE) \
|| ((string).pointer[offset] == 0xEF /* #xE000 <= . <= #xFFFD */ \
&& !((string).pointer[offset+1] == 0xBB /* && . != #xFEFF */ \
&& (string).pointer[offset+2] == 0xBF) \
&& !((string).pointer[offset+1] == 0xBF \
&& ((string).pointer[offset+2] == 0xBE \
|| (string).pointer[offset+2] == 0xBF))))

Definition at line 264 of file yaml_private.h.

◆ IS_SPACE

#define IS_SPACE (   string)    IS_SPACE_AT((string),0)

◆ IS_SPACE_AT

#define IS_SPACE_AT (   string,
  offset 
)    CHECK_AT((string),' ',(offset))

◆ IS_SPACEZ

#define IS_SPACEZ (   string)    IS_SPACEZ_AT((string),0)

Definition at line 367 of file yaml_private.h.

◆ IS_SPACEZ_AT

#define IS_SPACEZ_AT (   string,
  offset 
)    (IS_SPACE_AT((string),(offset)) || IS_BREAKZ_AT((string),(offset)))

Definition at line 364 of file yaml_private.h.

◆ IS_TAB

#define IS_TAB (   string)    IS_TAB_AT((string),0)

◆ IS_TAB_AT

#define IS_TAB_AT (   string,
  offset 
)    CHECK_AT((string),'\t',(offset))

Definition at line 315 of file yaml_private.h.

◆ IS_Z

#define IS_Z (   string)    IS_Z_AT((string),0)

◆ IS_Z_AT

#define IS_Z_AT (   string,
  offset 
)    CHECK_AT((string),'\0',(offset))

Definition at line 288 of file yaml_private.h.

◆ JOIN

#define JOIN (   context,
  string_a,
  string_b 
)
Value:
((yaml_string_join(&(string_a).start, &(string_a).pointer, \
&(string_a).end, &(string_b).start, \
&(string_b).pointer, &(string_b).end)) ? \
((string_b).pointer = (string_b).start, \
1) : \
((context)->error = YAML_MEMORY_ERROR, \
0))
Cannot allocate or reallocate a block of memory.
Definition: yaml.h:127
yaml_string_join(yaml_char_t **a_start, yaml_char_t **a_pointer, yaml_char_t **a_end, yaml_char_t **b_start, yaml_char_t **b_pointer, yaml_char_t **b_end)
Definition: api.c:95

Definition at line 160 of file yaml_private.h.

Referenced by yaml_parser_scan_block_scalar(), yaml_parser_scan_flow_scalar(), and yaml_parser_scan_plain_scalar().

◆ MAPPING_END_EVENT_INIT

#define MAPPING_END_EVENT_INIT (   event,
  start_mark,
  end_mark 
)    (EVENT_INIT((event),YAML_MAPPING_END_EVENT,(start_mark),(end_mark)))

◆ MAPPING_NODE_INIT

#define MAPPING_NODE_INIT (   node,
  node_tag,
  node_pairs_start,
  node_pairs_end,
  node_style,
  start_mark,
  end_mark 
)
Value:
(NODE_INIT((node),YAML_MAPPING_NODE,(node_tag),(start_mark),(end_mark)), \
(node).data.mapping.pairs.start = (node_pairs_start), \
(node).data.mapping.pairs.end = (node_pairs_end), \
(node).data.mapping.pairs.top = (node_pairs_start), \
(node).data.mapping.style = (node_style))
#define NODE_INIT(node, node_type, node_tag, node_start_mark, node_end_mark)
Definition: yaml_private.h:634
A mapping node.
Definition: yaml.h:699

Definition at line 656 of file yaml_private.h.

Referenced by yaml_document_add_mapping(), and yaml_parser_load_mapping().

◆ MAPPING_START_EVENT_INIT

#define MAPPING_START_EVENT_INIT (   event,
  event_anchor,
  event_tag,
  event_implicit,
  event_style,
  start_mark,
  end_mark 
)
Value:
(EVENT_INIT((event),YAML_MAPPING_START_EVENT,(start_mark),(end_mark)), \
(event).data.mapping_start.anchor = (event_anchor), \
(event).data.mapping_start.tag = (event_tag), \
(event).data.mapping_start.implicit = (event_implicit), \
(event).data.mapping_start.style = (event_style))
A MAPPING-START event.
Definition: yaml.h:378
#define EVENT_INIT(event, event_type, event_start_mark, event_end_mark)
Definition: yaml_private.h:548

Definition at line 599 of file yaml_private.h.

Referenced by yaml_emitter_dump_mapping(), yaml_mapping_start_event_initialize(), yaml_parser_parse_flow_sequence_entry(), and yaml_parser_parse_node().

◆ MOVE

#define MOVE (   string)    ((string).pointer += WIDTH((string)))

◆ NODE_INIT

#define NODE_INIT (   node,
  node_type,
  node_tag,
  node_start_mark,
  node_end_mark 
)
Value:
(memset(&(node), 0, sizeof(yaml_node_t)), \
(node).type = (node_type), \
(node).tag = (node_tag), \
(node).start_mark = (node_start_mark), \
(node).end_mark = (node_end_mark))
node_type
Definition: node.h:22
The node structure.
Definition: yaml.h:717

Definition at line 634 of file yaml_private.h.

◆ NULL_STRING

#define NULL_STRING   { NULL, NULL, NULL }

◆ OUTPUT_BUFFER_SIZE

#define OUTPUT_BUFFER_SIZE   16384

Definition at line 73 of file yaml_private.h.

Referenced by yaml_emitter_initialize().

◆ OUTPUT_RAW_BUFFER_SIZE

#define OUTPUT_RAW_BUFFER_SIZE   (OUTPUT_BUFFER_SIZE*2+2)

Definition at line 81 of file yaml_private.h.

Referenced by yaml_emitter_initialize().

◆ POP

#define POP (   context,
  stack 
)    (*(--(stack).top))

◆ PUSH

#define PUSH (   context,
  stack,
  value 
)
Value:
(((stack).top != (stack).end \
|| yaml_stack_extend((void **)&(stack).start, \
(void **)&(stack).top, (void **)&(stack).end)) ? \
(*((stack).top++) = value, \
1) : \
((context)->error = YAML_MEMORY_ERROR, \
0))
Cannot allocate or reallocate a block of memory.
Definition: yaml.h:127
yaml_stack_extend(void **start, void **top, void **end)
Definition: api.c:118
unsigned int top
Definition: nkf.c:4310

Definition at line 447 of file yaml_private.h.

◆ QUEUE_DEL

#define QUEUE_DEL (   context,
  queue 
)
Value:
(yaml_free((queue).start), \
(queue).start = (queue).head = (queue).tail = (queue).end = 0)
yaml_free(void *ptr)
Definition: api.c:51

Definition at line 467 of file yaml_private.h.

Referenced by yaml_emitter_delete(), yaml_emitter_initialize(), yaml_parser_delete(), and yaml_parser_initialize().

◆ QUEUE_EMPTY

#define QUEUE_EMPTY (   context,
  queue 
)    ((queue).head == (queue).tail)

◆ QUEUE_INIT

#define QUEUE_INIT (   context,
  queue,
  size 
)
Value:
(((queue).start = yaml_malloc((size)*sizeof(*(queue).start))) ? \
((queue).head = (queue).tail = (queue).start, \
(queue).end = (queue).start+(size), \
1) : \
((context)->error = YAML_MEMORY_ERROR, \
0))
Cannot allocate or reallocate a block of memory.
Definition: yaml.h:127
yaml_malloc(size_t size)
Definition: api.c:31
int size
Definition: encoding.c:57

Definition at line 459 of file yaml_private.h.

Referenced by yaml_emitter_initialize(), and yaml_parser_initialize().

◆ QUEUE_INSERT

#define QUEUE_INSERT (   context,
  queue,
  index,
  value 
)
Value:
(((queue).tail != (queue).end \
|| yaml_queue_extend((void **)&(queue).start, (void **)&(queue).head, \
(void **)&(queue).tail, (void **)&(queue).end)) ? \
(memmove((queue).head+(index)+1,(queue).head+(index), \
((queue).tail-(queue).head-(index))*sizeof(*(queue).start)), \
*((queue).head+(index)) = value, \
(queue).tail++, \
1) : \
((context)->error = YAML_MEMORY_ERROR, \
0))
Cannot allocate or reallocate a block of memory.
Definition: yaml.h:127
RUBY_EXTERN void * memmove(void *, const void *, size_t)
Definition: memmove.c:7
yaml_queue_extend(void **start, void **head, void **tail, void **end)
Definition: api.c:136

Definition at line 486 of file yaml_private.h.

Referenced by yaml_parser_fetch_value(), and yaml_parser_roll_indent().

◆ SCALAR_EVENT_INIT

#define SCALAR_EVENT_INIT (   event,
  event_anchor,
  event_tag,
  event_value,
  event_length,
  event_plain_implicit,
  event_quoted_implicit,
  event_style,
  start_mark,
  end_mark 
)
Value:
(EVENT_INIT((event),YAML_SCALAR_EVENT,(start_mark),(end_mark)), \
(event).data.scalar.anchor = (event_anchor), \
(event).data.scalar.tag = (event_tag), \
(event).data.scalar.value = (event_value), \
(event).data.scalar.length = (event_length), \
(event).data.scalar.plain_implicit = (event_plain_implicit), \
(event).data.scalar.quoted_implicit = (event_quoted_implicit), \
(event).data.scalar.style = (event_style))
#define EVENT_INIT(event, event_type, event_start_mark, event_end_mark)
Definition: yaml_private.h:548
A SCALAR event.
Definition: yaml.h:370

Definition at line 577 of file yaml_private.h.

Referenced by yaml_emitter_dump_scalar(), yaml_parser_parse_node(), yaml_parser_process_empty_scalar(), and yaml_scalar_event_initialize().

◆ SCALAR_NODE_INIT

#define SCALAR_NODE_INIT (   node,
  node_tag,
  node_value,
  node_length,
  node_style,
  start_mark,
  end_mark 
)
Value:
(NODE_INIT((node),YAML_SCALAR_NODE,(node_tag),(start_mark),(end_mark)), \
(node).data.scalar.value = (node_value), \
(node).data.scalar.length = (node_length), \
(node).data.scalar.style = (node_style))
#define NODE_INIT(node, node_type, node_tag, node_start_mark, node_end_mark)
Definition: yaml_private.h:634
A scalar node.
Definition: yaml.h:695

Definition at line 641 of file yaml_private.h.

Referenced by yaml_document_add_scalar(), and yaml_parser_load_scalar().

◆ SCALAR_TOKEN_INIT

#define SCALAR_TOKEN_INIT (   token,
  token_value,
  token_length,
  token_style,
  start_mark,
  end_mark 
)
Value:
(TOKEN_INIT((token),YAML_SCALAR_TOKEN,(start_mark),(end_mark)), \
(token).data.scalar.value = (token_value), \
(token).data.scalar.length = (token_length), \
(token).data.scalar.style = (token_style))
unsigned short token
Definition: id.c:36
#define TOKEN_INIT(token, token_type, token_start_mark, token_end_mark)
Definition: yaml_private.h:502
A SCALAR token.
Definition: yaml.h:263

Definition at line 528 of file yaml_private.h.

Referenced by yaml_parser_scan_block_scalar(), yaml_parser_scan_flow_scalar(), and yaml_parser_scan_plain_scalar().

◆ SEQUENCE_END_EVENT_INIT

#define SEQUENCE_END_EVENT_INIT (   event,
  start_mark,
  end_mark 
)    (EVENT_INIT((event),YAML_SEQUENCE_END_EVENT,(start_mark),(end_mark)))

◆ SEQUENCE_NODE_INIT

#define SEQUENCE_NODE_INIT (   node,
  node_tag,
  node_items_start,
  node_items_end,
  node_style,
  start_mark,
  end_mark 
)
Value:
(NODE_INIT((node),YAML_SEQUENCE_NODE,(node_tag),(start_mark),(end_mark)), \
(node).data.sequence.items.start = (node_items_start), \
(node).data.sequence.items.end = (node_items_end), \
(node).data.sequence.items.top = (node_items_start), \
(node).data.sequence.style = (node_style))
#define NODE_INIT(node, node_type, node_tag, node_start_mark, node_end_mark)
Definition: yaml_private.h:634
A sequence node.
Definition: yaml.h:697

Definition at line 648 of file yaml_private.h.

Referenced by yaml_document_add_sequence(), and yaml_parser_load_sequence().

◆ SEQUENCE_START_EVENT_INIT

#define SEQUENCE_START_EVENT_INIT (   event,
  event_anchor,
  event_tag,
  event_implicit,
  event_style,
  start_mark,
  end_mark 
)
Value:
(EVENT_INIT((event),YAML_SEQUENCE_START_EVENT,(start_mark),(end_mark)), \
(event).data.sequence_start.anchor = (event_anchor), \
(event).data.sequence_start.tag = (event_tag), \
(event).data.sequence_start.implicit = (event_implicit), \
(event).data.sequence_start.style = (event_style))
A SEQUENCE-START event.
Definition: yaml.h:373
#define EVENT_INIT(event, event_type, event_start_mark, event_end_mark)
Definition: yaml_private.h:548

Definition at line 588 of file yaml_private.h.

Referenced by yaml_emitter_dump_sequence(), yaml_parser_parse_node(), and yaml_sequence_start_event_initialize().

◆ STACK_DEL

#define STACK_DEL (   context,
  stack 
)

◆ STACK_EMPTY

#define STACK_EMPTY (   context,
  stack 
)    ((stack).start == (stack).top)

◆ STACK_INIT

#define STACK_INIT (   context,
  stack,
  size 
)
Value:
(((stack).start = yaml_malloc((size)*sizeof(*(stack).start))) ? \
((stack).top = (stack).start, \
(stack).end = (stack).start+(size), \
1) : \
((context)->error = YAML_MEMORY_ERROR, \
0))
Cannot allocate or reallocate a block of memory.
Definition: yaml.h:127
yaml_malloc(size_t size)
Definition: api.c:31
unsigned int top
Definition: nkf.c:4310
int size
Definition: encoding.c:57

Definition at line 426 of file yaml_private.h.

Referenced by yaml_document_add_mapping(), yaml_document_add_sequence(), yaml_document_initialize(), yaml_document_start_event_initialize(), yaml_emitter_initialize(), yaml_parser_initialize(), yaml_parser_load(), yaml_parser_load_mapping(), yaml_parser_load_sequence(), and yaml_parser_process_directives().

◆ STACK_LIMIT

#define STACK_LIMIT (   context,
  stack,
  size 
)
Value:
((stack).top - (stack).start < (size) ? \
1 : \
((context)->error = YAML_MEMORY_ERROR, \
0))
Cannot allocate or reallocate a block of memory.
Definition: yaml.h:127
unsigned int top
Definition: nkf.c:4310
int size
Definition: encoding.c:57

Definition at line 441 of file yaml_private.h.

Referenced by yaml_parser_load_mapping(), yaml_parser_load_scalar(), and yaml_parser_load_sequence().

◆ STREAM_END_EVENT_INIT

#define STREAM_END_EVENT_INIT (   event,
  start_mark,
  end_mark 
)    (EVENT_INIT((event),YAML_STREAM_END_EVENT,(start_mark),(end_mark)))

◆ STREAM_END_TOKEN_INIT

#define STREAM_END_TOKEN_INIT (   token,
  start_mark,
  end_mark 
)    (TOKEN_INIT((token),YAML_STREAM_END_TOKEN,(start_mark),(end_mark)))

Definition at line 512 of file yaml_private.h.

Referenced by yaml_parser_fetch_stream_end().

◆ STREAM_START_EVENT_INIT

#define STREAM_START_EVENT_INIT (   event,
  event_encoding,
  start_mark,
  end_mark 
)
Value:
(EVENT_INIT((event),YAML_STREAM_START_EVENT,(start_mark),(end_mark)), \
(event).data.stream_start.encoding = (event_encoding))
#define EVENT_INIT(event, event_type, event_start_mark, event_end_mark)
Definition: yaml_private.h:548
A STREAM-START event.
Definition: yaml.h:358

Definition at line 554 of file yaml_private.h.

Referenced by yaml_emitter_open(), yaml_parser_parse_stream_start(), and yaml_stream_start_event_initialize().

◆ STREAM_START_TOKEN_INIT

#define STREAM_START_TOKEN_INIT (   token,
  token_encoding,
  start_mark,
  end_mark 
)
Value:
(TOKEN_INIT((token),YAML_STREAM_START_TOKEN,(start_mark),(end_mark)), \
(token).data.stream_start.encoding = (token_encoding))
unsigned short token
Definition: id.c:36
A STREAM-START token.
Definition: yaml.h:218
#define TOKEN_INIT(token, token_type, token_start_mark, token_end_mark)
Definition: yaml_private.h:502

Definition at line 508 of file yaml_private.h.

Referenced by yaml_parser_fetch_stream_start().

◆ STRING

#define STRING (   string,
  length 
)    { (string), (string)+(length), (string) }

Definition at line 128 of file yaml_private.h.

Referenced by empty_str_alloc(), obj_type(), rb_str_resurrect(), str_new0(), and str_new_static().

◆ STRING_ASSIGN

#define STRING_ASSIGN (   value,
  string,
  length 
)

◆ STRING_DEL

#define STRING_DEL (   context,
  string 
)
Value:
(yaml_free((string).start), \
(string).start = (string).pointer = (string).end = 0)
yaml_free(void *ptr)
Definition: api.c:51

Definition at line 144 of file yaml_private.h.

Referenced by yaml_parser_scan_anchor(), yaml_parser_scan_block_scalar(), yaml_parser_scan_directive_name(), yaml_parser_scan_flow_scalar(), yaml_parser_scan_plain_scalar(), yaml_parser_scan_tag_handle(), and yaml_parser_scan_tag_uri().

◆ STRING_EXTEND

#define STRING_EXTEND (   context,
  string 
)
Value:
((((string).pointer+5 < (string).end) \
|| yaml_string_extend(&(string).start, \
&(string).pointer, &(string).end)) ? \
1 : \
((context)->error = YAML_MEMORY_ERROR, \
0))
Cannot allocate or reallocate a block of memory.
Definition: yaml.h:127
yaml_string_extend(yaml_char_t **start, yaml_char_t **pointer, yaml_char_t **end)
Definition: api.c:74

Definition at line 148 of file yaml_private.h.

Referenced by yaml_parser_scan_block_scalar(), yaml_parser_scan_flow_scalar(), yaml_parser_scan_plain_scalar(), and yaml_parser_scan_tag_uri().

◆ STRING_INIT

#define STRING_INIT (   context,
  string,
  size 
)
Value:
(((string).start = yaml_malloc(size)) ? \
((string).pointer = (string).start, \
(string).end = (string).start+(size), \
memset((string).start, 0, (size)), \
1) : \
((context)->error = YAML_MEMORY_ERROR, \
0))
Cannot allocate or reallocate a block of memory.
Definition: yaml.h:127
yaml_malloc(size_t size)
Definition: api.c:31
int size
Definition: encoding.c:57

Definition at line 135 of file yaml_private.h.

Referenced by yaml_parser_scan_anchor(), yaml_parser_scan_block_scalar(), yaml_parser_scan_directive_name(), yaml_parser_scan_flow_scalar(), yaml_parser_scan_plain_scalar(), yaml_parser_scan_tag_handle(), and yaml_parser_scan_tag_uri().

◆ TAG_DIRECTIVE_TOKEN_INIT

#define TAG_DIRECTIVE_TOKEN_INIT (   token,
  token_handle,
  token_prefix,
  start_mark,
  end_mark 
)
Value:
(TOKEN_INIT((token),YAML_TAG_DIRECTIVE_TOKEN,(start_mark),(end_mark)), \
(token).data.tag_directive.handle = (token_handle), \
(token).data.tag_directive.prefix = (token_prefix))
unsigned short token
Definition: id.c:36
#define TOKEN_INIT(token, token_type, token_start_mark, token_end_mark)
Definition: yaml_private.h:502
A TAG-DIRECTIVE token.
Definition: yaml.h:225

Definition at line 539 of file yaml_private.h.

Referenced by yaml_parser_scan_directive().

◆ TAG_TOKEN_INIT

#define TAG_TOKEN_INIT (   token,
  token_handle,
  token_suffix,
  start_mark,
  end_mark 
)
Value:
(TOKEN_INIT((token),YAML_TAG_TOKEN,(start_mark),(end_mark)), \
(token).data.tag.handle = (token_handle), \
(token).data.tag.suffix = (token_suffix))
unsigned short token
Definition: id.c:36
A TAG token.
Definition: yaml.h:261
#define TOKEN_INIT(token, token_type, token_start_mark, token_end_mark)
Definition: yaml_private.h:502

Definition at line 523 of file yaml_private.h.

Referenced by yaml_parser_scan_tag().

◆ TOKEN_INIT

#define TOKEN_INIT (   token,
  token_type,
  token_start_mark,
  token_end_mark 
)
Value:
(memset(&(token), 0, sizeof(yaml_token_t)), \
(token).type = (token_type), \
(token).start_mark = (token_start_mark), \
(token).end_mark = (token_end_mark))
unsigned short token
Definition: id.c:36
The token structure.
Definition: yaml.h:267

Definition at line 502 of file yaml_private.h.

Referenced by yaml_parser_fetch_block_entry(), yaml_parser_fetch_document_indicator(), yaml_parser_fetch_flow_collection_end(), yaml_parser_fetch_flow_collection_start(), yaml_parser_fetch_flow_entry(), yaml_parser_fetch_key(), yaml_parser_fetch_value(), yaml_parser_roll_indent(), and yaml_parser_unroll_indent().

◆ VERSION_DIRECTIVE_TOKEN_INIT

#define VERSION_DIRECTIVE_TOKEN_INIT (   token,
  token_major,
  token_minor,
  start_mark,
  end_mark 
)
Value:
(TOKEN_INIT((token),YAML_VERSION_DIRECTIVE_TOKEN,(start_mark),(end_mark)), \
(token).data.version_directive.major = (token_major), \
(token).data.version_directive.minor = (token_minor))
unsigned short token
Definition: id.c:36
A VERSION-DIRECTIVE token.
Definition: yaml.h:223
#define TOKEN_INIT(token, token_type, token_start_mark, token_end_mark)
Definition: yaml_private.h:502

Definition at line 534 of file yaml_private.h.

Referenced by yaml_parser_scan_directive().

◆ WIDTH

#define WIDTH (   string)    WIDTH_AT((string),0)

Definition at line 388 of file yaml_private.h.

Referenced by yaml_emitter_analyze_scalar(), and yaml_emitter_write_tag_content().

◆ WIDTH_AT

#define WIDTH_AT (   string,
  offset 
)
Value:
(((string).pointer[offset] & 0x80) == 0x00 ? 1 : \
((string).pointer[offset] & 0xE0) == 0xC0 ? 2 : \
((string).pointer[offset] & 0xF0) == 0xE0 ? 3 : \
((string).pointer[offset] & 0xF8) == 0xF0 ? 4 : 0)

Definition at line 382 of file yaml_private.h.

Referenced by yaml_emitter_write_folded_scalar().

Function Documentation

◆ yaml_free()

yaml_free ( void *  ptr)

◆ yaml_malloc()

yaml_malloc ( size_t  size)

◆ yaml_parser_fetch_more_tokens()

yaml_parser_fetch_more_tokens ( yaml_parser_t parser)

◆ yaml_parser_update_buffer()

yaml_parser_update_buffer ( yaml_parser_t parser,
size_t  length 
)

◆ yaml_queue_extend()

yaml_queue_extend ( void **  start,
void **  head,
void **  tail,
void **  end 
)

Definition at line 136 of file api.c.

References memmove(), YAML_DECLARE, and yaml_realloc().

◆ yaml_realloc()

yaml_realloc ( void *  ptr,
size_t  size 
)

Definition at line 41 of file api.c.

References malloc, realloc, size, and YAML_DECLARE.

Referenced by yaml_queue_extend(), yaml_stack_extend(), and yaml_string_extend().

◆ yaml_stack_extend()

yaml_stack_extend ( void **  start,
void **  top,
void **  end 
)

Definition at line 118 of file api.c.

References top, YAML_DECLARE, and yaml_realloc().

◆ yaml_strdup()

yaml_strdup ( const yaml_char_t )

◆ yaml_string_extend()

yaml_string_extend ( yaml_char_t **  start,
yaml_char_t **  pointer,
yaml_char_t **  end 
)

Definition at line 74 of file api.c.

References YAML_DECLARE, and yaml_realloc().

Referenced by yaml_parser_scan_tag_uri(), and yaml_string_join().

◆ yaml_string_join()

yaml_string_join ( yaml_char_t **  a_start,
yaml_char_t **  a_pointer,
yaml_char_t **  a_end,
yaml_char_t **  b_start,
yaml_char_t **  b_pointer,
yaml_char_t **  b_end 
)

Definition at line 95 of file api.c.

References memcpy, YAML_DECLARE, and yaml_string_extend().