Ruby  2.1.10p492(2016-04-01revision54464)
Macros | Functions
scanner.c File Reference
#include "yaml_private.h"

Go to the source code of this file.

Macros

#define CACHE(parser, length)
 
#define SKIP(parser)
 
#define SKIP_LINE(parser)
 
#define READ(parser, string)
 
#define READ_LINE(parser, string)
 
#define MAX_NUMBER_LENGTH   9
 

Functions

 yaml_parser_scan (yaml_parser_t *parser, yaml_token_t *token)
 Scan the input stream and produce the next token. More...
 
static int yaml_parser_set_scanner_error (yaml_parser_t *parser, const char *context, yaml_mark_t context_mark, const char *problem)
 
 yaml_parser_fetch_more_tokens (yaml_parser_t *parser)
 
static int yaml_parser_fetch_next_token (yaml_parser_t *parser)
 
static int yaml_parser_stale_simple_keys (yaml_parser_t *parser)
 
static int yaml_parser_save_simple_key (yaml_parser_t *parser)
 
static int yaml_parser_remove_simple_key (yaml_parser_t *parser)
 
static int yaml_parser_increase_flow_level (yaml_parser_t *parser)
 
static int yaml_parser_decrease_flow_level (yaml_parser_t *parser)
 
static int yaml_parser_roll_indent (yaml_parser_t *parser, ptrdiff_t column, ptrdiff_t number, yaml_token_type_t type, yaml_mark_t mark)
 
static int yaml_parser_unroll_indent (yaml_parser_t *parser, ptrdiff_t column)
 
static int yaml_parser_fetch_stream_start (yaml_parser_t *parser)
 
static int yaml_parser_fetch_stream_end (yaml_parser_t *parser)
 
static int yaml_parser_fetch_directive (yaml_parser_t *parser)
 
static int yaml_parser_fetch_document_indicator (yaml_parser_t *parser, yaml_token_type_t type)
 
static int yaml_parser_fetch_flow_collection_start (yaml_parser_t *parser, yaml_token_type_t type)
 
static int yaml_parser_fetch_flow_collection_end (yaml_parser_t *parser, yaml_token_type_t type)
 
static int yaml_parser_fetch_flow_entry (yaml_parser_t *parser)
 
static int yaml_parser_fetch_block_entry (yaml_parser_t *parser)
 
static int yaml_parser_fetch_key (yaml_parser_t *parser)
 
static int yaml_parser_fetch_value (yaml_parser_t *parser)
 
static int yaml_parser_fetch_anchor (yaml_parser_t *parser, yaml_token_type_t type)
 
static int yaml_parser_fetch_tag (yaml_parser_t *parser)
 
static int yaml_parser_fetch_block_scalar (yaml_parser_t *parser, int literal)
 
static int yaml_parser_fetch_flow_scalar (yaml_parser_t *parser, int single)
 
static int yaml_parser_fetch_plain_scalar (yaml_parser_t *parser)
 
static int yaml_parser_scan_to_next_token (yaml_parser_t *parser)
 
static int yaml_parser_scan_directive (yaml_parser_t *parser, yaml_token_t *token)
 
static int yaml_parser_scan_directive_name (yaml_parser_t *parser, yaml_mark_t start_mark, yaml_char_t **name)
 
static int yaml_parser_scan_version_directive_value (yaml_parser_t *parser, yaml_mark_t start_mark, int *major, int *minor)
 
static int yaml_parser_scan_version_directive_number (yaml_parser_t *parser, yaml_mark_t start_mark, int *number)
 
static int yaml_parser_scan_tag_directive_value (yaml_parser_t *parser, yaml_mark_t mark, yaml_char_t **handle, yaml_char_t **prefix)
 
static int yaml_parser_scan_anchor (yaml_parser_t *parser, yaml_token_t *token, yaml_token_type_t type)
 
static int yaml_parser_scan_tag (yaml_parser_t *parser, yaml_token_t *token)
 
static int yaml_parser_scan_tag_handle (yaml_parser_t *parser, int directive, yaml_mark_t start_mark, yaml_char_t **handle)
 
static int yaml_parser_scan_tag_uri (yaml_parser_t *parser, int directive, yaml_char_t *head, yaml_mark_t start_mark, yaml_char_t **uri)
 
static int yaml_parser_scan_uri_escapes (yaml_parser_t *parser, int directive, yaml_mark_t start_mark, yaml_string_t *string)
 
static int yaml_parser_scan_block_scalar (yaml_parser_t *parser, yaml_token_t *token, int literal)
 
static int yaml_parser_scan_block_scalar_breaks (yaml_parser_t *parser, int *indent, yaml_string_t *breaks, yaml_mark_t start_mark, yaml_mark_t *end_mark)
 
static int yaml_parser_scan_flow_scalar (yaml_parser_t *parser, yaml_token_t *token, int single)
 
static int yaml_parser_scan_plain_scalar (yaml_parser_t *parser, yaml_token_t *token)
 

Macro Definition Documentation

#define CACHE (   parser,
  length 
)
#define MAX_NUMBER_LENGTH   9

Definition at line 2205 of file scanner.c.

Referenced by yaml_parser_scan_version_directive_number().

#define READ (   parser,
  string 
)
Value:
(STRING_EXTEND(parser,string) ? \
(COPY(string,parser->buffer), \
parser->mark.index ++, \
parser->mark.column ++, \
parser->unread --, \
1) : 0)
#define COPY(string_a, string_b)
Definition: yaml_private.h:400
#define STRING_EXTEND(context, string)
Definition: yaml_private.h:148
struct parser_params * parser
Definition: ripper.c:4527

Definition at line 518 of file scanner.c.

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 READ_LINE (   parser,
  string 
)
#define SKIP (   parser)
#define SKIP_LINE (   parser)
Value:
(IS_CRLF(parser->buffer) ? \
(parser->mark.index += 2, \
parser->mark.column = 0, \
parser->mark.line ++, \
parser->unread -= 2, \
parser->buffer.pointer += 2) : \
IS_BREAK(parser->buffer) ? \
(parser->mark.index ++, \
parser->mark.column = 0, \
parser->mark.line ++, \
parser->unread --, \
parser->buffer.pointer += WIDTH(parser->buffer)) : 0)
#define WIDTH(string)
Definition: yaml_private.h:388
#define IS_CRLF(string)
Definition: yaml_private.h:349
struct parser_params * parser
Definition: ripper.c:4527
#define IS_BREAK(string)
Definition: yaml_private.h:344

Definition at line 500 of file scanner.c.

Referenced by yaml_parser_scan_block_scalar(), yaml_parser_scan_directive(), yaml_parser_scan_flow_scalar(), and yaml_parser_scan_to_next_token().

Function Documentation

static int yaml_parser_decrease_flow_level ( yaml_parser_t parser)
static
static int yaml_parser_fetch_anchor ( yaml_parser_t parser,
yaml_token_type_t  type 
)
static
static int yaml_parser_fetch_block_entry ( yaml_parser_t parser)
static
static int yaml_parser_fetch_block_scalar ( yaml_parser_t parser,
int  literal 
)
static
static int yaml_parser_fetch_directive ( yaml_parser_t parser)
static
static int yaml_parser_fetch_document_indicator ( yaml_parser_t parser,
yaml_token_type_t  type 
)
static
static int yaml_parser_fetch_flow_collection_end ( yaml_parser_t parser,
yaml_token_type_t  type 
)
static
static int yaml_parser_fetch_flow_collection_start ( yaml_parser_t parser,
yaml_token_type_t  type 
)
static
static int yaml_parser_fetch_flow_entry ( yaml_parser_t parser)
static
static int yaml_parser_fetch_flow_scalar ( yaml_parser_t parser,
int  single 
)
static
static int yaml_parser_fetch_key ( yaml_parser_t parser)
static
yaml_parser_fetch_more_tokens ( yaml_parser_t parser)
static int yaml_parser_fetch_next_token ( yaml_parser_t parser)
static
static int yaml_parser_fetch_plain_scalar ( yaml_parser_t parser)
static
static int yaml_parser_fetch_stream_end ( yaml_parser_t parser)
static
static int yaml_parser_fetch_stream_start ( yaml_parser_t parser)
static
static int yaml_parser_fetch_tag ( yaml_parser_t parser)
static
static int yaml_parser_fetch_value ( yaml_parser_t parser)
static
static int yaml_parser_increase_flow_level ( yaml_parser_t parser)
static
static int yaml_parser_remove_simple_key ( yaml_parser_t parser)
static
static int yaml_parser_roll_indent ( yaml_parser_t parser,
ptrdiff_t  column,
ptrdiff_t  number,
yaml_token_type_t  type,
yaml_mark_t  mark 
)
static
static int yaml_parser_save_simple_key ( yaml_parser_t parser)
static
static int yaml_parser_scan_anchor ( yaml_parser_t parser,
yaml_token_t token,
yaml_token_type_t  type 
)
static
static int yaml_parser_scan_block_scalar ( yaml_parser_t parser,
yaml_token_t token,
int  literal 
)
static
static int yaml_parser_scan_block_scalar_breaks ( yaml_parser_t parser,
int indent,
yaml_string_t breaks,
yaml_mark_t  start_mark,
yaml_mark_t end_mark 
)
static
int yaml_parser_scan_directive ( yaml_parser_t parser,
yaml_token_t token 
)
static
static int yaml_parser_scan_directive_name ( yaml_parser_t parser,
yaml_mark_t  start_mark,
yaml_char_t **  name 
)
static
static int yaml_parser_scan_flow_scalar ( yaml_parser_t parser,
yaml_token_t token,
int  single 
)
static
static int yaml_parser_scan_plain_scalar ( yaml_parser_t parser,
yaml_token_t token 
)
static
static int yaml_parser_scan_tag ( yaml_parser_t parser,
yaml_token_t token 
)
static
static int yaml_parser_scan_tag_directive_value ( yaml_parser_t parser,
yaml_mark_t  mark,
yaml_char_t **  handle,
yaml_char_t **  prefix 
)
static
static int yaml_parser_scan_tag_handle ( yaml_parser_t parser,
int  directive,
yaml_mark_t  start_mark,
yaml_char_t **  handle 
)
static
static int yaml_parser_scan_tag_uri ( yaml_parser_t parser,
int  directive,
yaml_char_t head,
yaml_mark_t  start_mark,
yaml_char_t **  uri 
)
static
static int yaml_parser_scan_to_next_token ( yaml_parser_t parser)
static
static int yaml_parser_scan_uri_escapes ( yaml_parser_t parser,
int  directive,
yaml_mark_t  start_mark,
yaml_string_t string 
)
static
static int yaml_parser_scan_version_directive_number ( yaml_parser_t parser,
yaml_mark_t  start_mark,
int number 
)
static
static int yaml_parser_scan_version_directive_value ( yaml_parser_t parser,
yaml_mark_t  start_mark,
int major,
int minor 
)
static
static int yaml_parser_set_scanner_error ( yaml_parser_t parser,
const char *  context,
yaml_mark_t  context_mark,
const char *  problem 
)
static
static int yaml_parser_stale_simple_keys ( yaml_parser_t parser)
static
static int yaml_parser_unroll_indent ( yaml_parser_t parser,
ptrdiff_t  column 
)
static