ext/psych/yaml/yaml_private.h File Reference

#include <yaml.h>
#include <assert.h>
#include <limits.h>
#include <stddef.h>
#include <stdint.h>

Go to the source code of this file.

Data Structures

struct  yaml_string_t

Defines

#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)
#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)

Define Documentation

#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))

Definition at line 574 of file yaml_private.h.

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

#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))

Definition at line 516 of file yaml_private.h.

Referenced by yaml_parser_scan_anchor().

#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))

Definition at line 520 of file yaml_private.h.

Referenced by yaml_parser_scan_anchor().

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

Definition at line 217 of file yaml_private.h.

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

Definition at line 249 of file yaml_private.h.

#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'))

Definition at line 240 of file yaml_private.h.

Referenced by yaml_parser_scan_flow_scalar(), and yaml_parser_scan_uri_escapes().

#define BUFFER_DEL ( context,
buffer   ) 
Value:
(yaml_free((buffer).start),                                                 \
     (buffer).start = (buffer).pointer = (buffer).end = 0)

Definition at line 103 of file yaml_private.h.

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

#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))

Definition at line 95 of file yaml_private.h.

Referenced by yaml_emitter_initialize(), and yaml_parser_initialize().

#define CHECK ( string,
octet   )     CHECK_AT((string),(octet),0)
#define CHECK_AT ( string,
octet,
offset   )     ((string).pointer[offset] == (yaml_char_t)(octet))
#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().

#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.

Referenced by BSD__sfvwrite().

#define DEQUEUE ( context,
queue   )     (*((queue).head++))
#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))

Definition at line 570 of file yaml_private.h.

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

#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))

Definition at line 618 of file yaml_private.h.

Referenced by yaml_document_initialize().

#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))

Definition at line 563 of file yaml_private.h.

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

#define ENQUEUE ( context,
queue,
value   ) 
#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))

Definition at line 549 of file yaml_private.h.

#define INITIAL_QUEUE_SIZE   16

Definition at line 88 of file yaml_private.h.

Referenced by yaml_emitter_initialize(), and yaml_parser_initialize().

#define INITIAL_STACK_SIZE   16
#define INITIAL_STRING_SIZE   16
#define INPUT_BUFFER_SIZE   (INPUT_RAW_BUFFER_SIZE*3)

Definition at line 67 of file yaml_private.h.

Referenced by yaml_parser_initialize().

#define INPUT_RAW_BUFFER_SIZE   16384

Definition at line 59 of file yaml_private.h.

Referenced by yaml_parser_initialize().

#define IS_ALPHA ( string   )     IS_ALPHA_AT((string),0)
#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] == '-')

Definition at line 191 of file yaml_private.h.

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

Definition at line 255 of file yaml_private.h.

#define IS_BLANK ( string   )     IS_BLANK_AT((string),0)
#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().

#define IS_BLANKZ ( string   )     IS_BLANKZ_AT((string),0)
#define IS_BLANKZ_AT ( string,
offset   )     (IS_BLANK_AT((string),(offset)) || IS_BREAKZ_AT((string),(offset)))
#define IS_BOM ( string   )     IS_BOM_AT(string,0)
#define IS_BOM_AT ( string,
offset   ) 
Value:
(CHECK_AT((string),'\xEF',(offset))                                        \
      && CHECK_AT((string),'\xBB',(offset)+1)                                   \
      && CHECK_AT((string),'\xBF',(offset)+2))

Definition at line 296 of file yaml_private.h.

#define IS_BREAK ( string   )     IS_BREAK_AT((string),0)
#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)))

Definition at line 332 of file yaml_private.h.

Referenced by yaml_emitter_write_folded_scalar(), and yaml_parser_scan_flow_scalar().

#define IS_BREAKZ ( string   )     IS_BREAKZ_AT((string),0)
#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.

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

Definition at line 349 of file yaml_private.h.

#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.

#define IS_DIGIT ( string   )     IS_DIGIT_AT((string),0)
#define IS_DIGIT_AT ( string,
offset   ) 
Value:
(((string).pointer[offset] >= (yaml_char_t) '0' &&                         \
       (string).pointer[offset] <= (yaml_char_t) '9'))

Definition at line 207 of file yaml_private.h.

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

Definition at line 234 of file yaml_private.h.

#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'))

Definition at line 226 of file yaml_private.h.

Referenced by yaml_parser_scan_flow_scalar(), and yaml_parser_scan_uri_escapes().

#define IS_PRINTABLE ( string   )     IS_PRINTABLE_AT((string),0)
#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.

#define IS_SPACE ( string   )     IS_SPACE_AT((string),0)
#define IS_SPACE_AT ( string,
offset   )     CHECK_AT((string),' ',(offset))
#define IS_SPACEZ ( string   )     IS_SPACEZ_AT((string),0)

Definition at line 367 of file yaml_private.h.

#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.

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

Definition at line 315 of file yaml_private.h.

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

Definition at line 288 of file yaml_private.h.

#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))

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().

#define MAPPING_END_EVENT_INIT ( event,
start_mark,
end_mark   )     (EVENT_INIT((event),YAML_MAPPING_END_EVENT,(start_mark),(end_mark)))
#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))

Definition at line 658 of file yaml_private.h.

Referenced by yaml_document_add_mapping(), and yaml_parser_load_mapping().

#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))

Definition at line 601 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().

#define MOVE ( string   )     ((string).pointer += WIDTH((string)))
#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))

Definition at line 635 of file yaml_private.h.

#define NULL_STRING   { NULL, NULL, NULL }
#define OUTPUT_BUFFER_SIZE   16384

Definition at line 73 of file yaml_private.h.

Referenced by yaml_emitter_initialize().

#define OUTPUT_RAW_BUFFER_SIZE   (OUTPUT_BUFFER_SIZE*2+2)

Definition at line 81 of file yaml_private.h.

Referenced by yaml_emitter_initialize().

#define POP ( context,
stack   )     (*(--(stack).top))
#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))

Definition at line 448 of file yaml_private.h.

#define QUEUE_DEL ( context,
queue   ) 
Value:
(yaml_free((queue).start),                                                  \
     (queue).start = (queue).head = (queue).tail = (queue).end = 0)

Definition at line 468 of file yaml_private.h.

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

#define QUEUE_EMPTY ( context,
queue   )     ((queue).head == (queue).tail)
#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))

Definition at line 460 of file yaml_private.h.

Referenced by yaml_emitter_initialize(), and yaml_parser_initialize().

#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))

Definition at line 487 of file yaml_private.h.

Referenced by yaml_parser_fetch_value(), and yaml_parser_roll_indent().

#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))

Definition at line 579 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().

#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))

Definition at line 643 of file yaml_private.h.

Referenced by yaml_document_add_scalar(), and yaml_parser_load_scalar().

#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))

Definition at line 529 of file yaml_private.h.

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

#define SEQUENCE_END_EVENT_INIT ( event,
start_mark,
end_mark   )     (EVENT_INIT((event),YAML_SEQUENCE_END_EVENT,(start_mark),(end_mark)))
#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))

Definition at line 650 of file yaml_private.h.

Referenced by yaml_document_add_sequence(), and yaml_parser_load_sequence().

#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))

Definition at line 590 of file yaml_private.h.

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

#define STACK_DEL ( context,
stack   ) 
#define STACK_EMPTY ( context,
stack   ) 
#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))

Definition at line 426 of file yaml_private.h.

Referenced by match_at(), 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().

#define STACK_LIMIT ( context,
stack,
size   ) 
Value:
((stack).top - (stack).start < (size) ?                                     \
        1 :                                                                     \
        ((context)->error = YAML_MEMORY_ERROR,                                  \
         0))

Definition at line 442 of file yaml_private.h.

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

#define STREAM_END_EVENT_INIT ( event,
start_mark,
end_mark   )     (EVENT_INIT((event),YAML_STREAM_END_EVENT,(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)))

Definition at line 513 of file yaml_private.h.

Referenced by yaml_parser_fetch_stream_end().

#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))

Definition at line 555 of file yaml_private.h.

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

#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))

Definition at line 509 of file yaml_private.h.

Referenced by yaml_parser_fetch_stream_start().

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

Definition at line 128 of file yaml_private.h.

#define STRING_ASSIGN ( value,
string,
length   ) 
#define STRING_DEL ( context,
string   ) 
#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))

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().

#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))

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().

#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))

Definition at line 540 of file yaml_private.h.

Referenced by yaml_parser_scan_directive().

#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))

Definition at line 524 of file yaml_private.h.

Referenced by yaml_parser_scan_tag().

#define TOKEN_INIT ( token,
token_type,
token_start_mark,
token_end_mark   ) 
#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))

Definition at line 535 of file yaml_private.h.

Referenced by yaml_parser_scan_directive().

#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().

#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 ( void *  ptr  ) 
yaml_malloc ( size_t  size  ) 
yaml_parser_fetch_more_tokens ( yaml_parser_t parser  ) 
yaml_parser_update_buffer ( yaml_parser_t parser,
size_t  length 
)
yaml_queue_extend ( void **  start,
void **  head,
void **  tail,
void **  end 
)

Definition at line 136 of file api.c.

References memmove(), and yaml_realloc().

yaml_realloc ( void *  ptr,
size_t  size 
)

Definition at line 41 of file api.c.

References malloc, and realloc.

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

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

Definition at line 118 of file api.c.

References yaml_realloc().

yaml_strdup ( const yaml_char_t  ) 
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_realloc().

Referenced by yaml_parser_scan_tag_uri(), and 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 yaml_string_extend().


Generated on 18 May 2020 for Ruby by  doxygen 1.6.1