Ruby  2.1.3p242(2014-09-19revision47630)
yaml_emitter_s Struct Reference

The emitter structure. More...

#include <yaml.h>

Data Fields

unsigned char * buffer
 The buffer pointer.
 
size_t size
 The buffer size.
 
size_t * size_written
 The number of written bytes.
 
struct {
   unsigned char *   buffer
 The buffer pointer.
 
   size_t   size
 The buffer size.
 
   size_t *   size_written
 The number of written bytes.
 
} string
 
FILE * file
 File output data.
 
yaml_char_t * start
 The beginning of the buffer.
 
yaml_char_t * end
 The end of the buffer.
 
yaml_char_t * pointer
 The current position of the buffer.
 
yaml_char_t * last
 The last filled position of the buffer.
 
unsigned char * start
 The beginning of the buffer.
 
unsigned char * end
 The end of the buffer.
 
unsigned char * pointer
 The current position of the buffer.
 
unsigned char * last
 The last filled position of the buffer.
 
yaml_emitter_state_t * start
 The beginning of the stack.
 
yaml_emitter_state_t * end
 The end of the stack.
 
yaml_emitter_state_t * top
 The top of the stack.
 
yaml_event_t * start
 The beginning of the event queue.
 
yaml_event_t * end
 The end of the event queue.
 
yaml_event_t * head
 The head of the event queue.
 
yaml_event_t * tail
 The tail of the event queue.
 
int * start
 The beginning of the stack.
 
int * end
 The end of the stack.
 
int * top
 The top of the stack.
 
yaml_tag_directive_t * start
 The beginning of the list.
 
yaml_tag_directive_t * end
 The end of the list.
 
yaml_tag_directive_t * top
 The top of the list.
 
yaml_char_t * anchor
 The anchor value.
 
size_t anchor_length
 The anchor length.
 
int alias
 Is it an alias?
 
yaml_char_t * handle
 The tag handle.
 
size_t handle_length
 The tag handle length.
 
yaml_char_t * suffix
 The tag suffix.
 
size_t suffix_length
 The tag suffix length.
 
yaml_char_t * value
 The scalar value.
 
size_t length
 The scalar length.
 
int multiline
 Does the scalar contain line breaks?
 
int flow_plain_allowed
 Can the scalar be expessed in the flow plain style?
 
int block_plain_allowed
 Can the scalar be expressed in the block plain style?
 
int single_quoted_allowed
 Can the scalar be expressed in the single quoted style?
 
int block_allowed
 Can the scalar be expressed in the literal or folded styles?
 
yaml_scalar_style_t style
 The output style.
 
int references
 The number of references.
 
int anchor
 The anchor id.
 
int serialized
 If the node has been emitted?
 
Error handling
yaml_error_type_t error
 Error type.
 
const char * problem
 Error description.
 
Writer stuff
yaml_write_handler_t * write_handler
 Write handler.
 
void * write_handler_data
 A pointer for passing to the white handler.
 
union {
   struct {
      unsigned char *   buffer
 The buffer pointer.
 
      size_t   size
 The buffer size.
 
      size_t *   size_written
 The number of written bytes.
 
   }   string
 
   FILE *   file
 File output data.
 
} output
 
struct {
   yaml_char_t *   start
 The beginning of the buffer.
 
   yaml_char_t *   end
 The end of the buffer.
 
   yaml_char_t *   pointer
 The current position of the buffer.
 
   yaml_char_t *   last
 The last filled position of the buffer.
 
} buffer
 
struct {
   unsigned char *   start
 The beginning of the buffer.
 
   unsigned char *   end
 The end of the buffer.
 
   unsigned char *   pointer
 The current position of the buffer.
 
   unsigned char *   last
 The last filled position of the buffer.
 
} raw_buffer
 
yaml_encoding_t encoding
 The stream encoding.
 
Emitter stuff
int canonical
 If the output is in the canonical style?
 
int best_indent
 The number of indentation spaces.
 
int best_width
 The preferred width of the output lines.
 
int unicode
 Allow unescaped non-ASCII characters?
 
yaml_break_t line_break
 The preferred line break.
 
struct {
   yaml_emitter_state_t *   start
 The beginning of the stack.
 
   yaml_emitter_state_t *   end
 The end of the stack.
 
   yaml_emitter_state_t *   top
 The top of the stack.
 
} states
 
yaml_emitter_state_t state
 The current emitter state.
 
struct {
   yaml_event_t *   start
 The beginning of the event queue.
 
   yaml_event_t *   end
 The end of the event queue.
 
   yaml_event_t *   head
 The head of the event queue.
 
   yaml_event_t *   tail
 The tail of the event queue.
 
} events
 
struct {
   int *   start
 The beginning of the stack.
 
   int *   end
 The end of the stack.
 
   int *   top
 The top of the stack.
 
} indents
 
struct {
   yaml_tag_directive_t *   start
 The beginning of the list.
 
   yaml_tag_directive_t *   end
 The end of the list.
 
   yaml_tag_directive_t *   top
 The top of the list.
 
} tag_directives
 
int indent
 The current indentation level.
 
int flow_level
 The current flow level.
 
int root_context
 Is it the document root context?
 
int sequence_context
 Is it a sequence context?
 
int mapping_context
 Is it a mapping context?
 
int simple_key_context
 Is it a simple mapping key context?
 
int line
 The current line.
 
int column
 The current column.
 
int whitespace
 If the last character was a whitespace?
 
int indention
 If the last character was an indentation character (' ', '-', '?', ':')?
 
int open_ended
 If an explicit document end is required?
 
struct {
   yaml_char_t *   anchor
 The anchor value.
 
   size_t   anchor_length
 The anchor length.
 
   int   alias
 Is it an alias?
 
} anchor_data
 
struct {
   yaml_char_t *   handle
 The tag handle.
 
   size_t   handle_length
 The tag handle length.
 
   yaml_char_t *   suffix
 The tag suffix.
 
   size_t   suffix_length
 The tag suffix length.
 
} tag_data
 
struct {
   yaml_char_t *   value
 The scalar value.
 
   size_t   length
 The scalar length.
 
   int   multiline
 Does the scalar contain line breaks?
 
   int   flow_plain_allowed
 Can the scalar be expessed in the flow plain style?
 
   int   block_plain_allowed
 Can the scalar be expressed in the block plain style?
 
   int   single_quoted_allowed
 Can the scalar be expressed in the single quoted style?
 
   int   block_allowed
 Can the scalar be expressed in the literal or folded styles?
 
   yaml_scalar_style_t   style
 The output style.
 
} scalar_data
 
Dumper stuff
int opened
 If the stream was already opened?
 
int closed
 If the stream was already closed?
 
struct {
   int   references
 The number of references.
 
   int   anchor
 The anchor id.
 
   int   serialized
 If the node has been emitted?
 
} anchors
 
int last_anchor_id
 The last assigned anchor id.
 
yaml_document_t * document
 The currently emitted document.
 

Detailed Description

The emitter structure.

All members are internal. Manage the structure using the yaml_emitter_ family of functions.

Definition at line 1525 of file yaml.h.

Field Documentation

int yaml_emitter_s::alias

Is it an alias?

Definition at line 1693 of file yaml.h.

Referenced by yaml_emitter_analyze_anchor(), and yaml_emitter_process_anchor().

yaml_char_t* yaml_emitter_s::anchor
int yaml_emitter_s::anchor

The anchor id.

Definition at line 1747 of file yaml.h.

struct { ... } yaml_emitter_s::anchor_data
size_t yaml_emitter_s::anchor_length
struct { ... } * yaml_emitter_s::anchors
int yaml_emitter_s::best_indent

The number of indentation spaces.

Definition at line 1607 of file yaml.h.

Referenced by indentation(), yaml_emitter_emit_stream_start(), yaml_emitter_increase_indent(), and yaml_emitter_write_block_scalar_hints().

int yaml_emitter_s::best_width
int yaml_emitter_s::block_allowed

Can the scalar be expressed in the literal or folded styles?

Definition at line 1723 of file yaml.h.

Referenced by yaml_emitter_analyze_scalar(), and yaml_emitter_select_scalar_style().

int yaml_emitter_s::block_plain_allowed

Can the scalar be expressed in the block plain style?

Definition at line 1719 of file yaml.h.

Referenced by yaml_emitter_analyze_scalar(), and yaml_emitter_select_scalar_style().

unsigned char* yaml_emitter_s::buffer

The buffer pointer.

Definition at line 1557 of file yaml.h.

Referenced by yaml_emitter_write_bom().

struct { ... } yaml_emitter_s::buffer
int yaml_emitter_s::canonical
int yaml_emitter_s::closed

If the stream was already closed?

Definition at line 1740 of file yaml.h.

int yaml_emitter_s::column
yaml_document_t* yaml_emitter_s::document

The currently emitted document.

Definition at line 1756 of file yaml.h.

Referenced by yaml_emitter_anchor_node(), yaml_emitter_delete_document_and_anchors(), and yaml_emitter_dump_node().

yaml_encoding_t yaml_emitter_s::encoding

The stream encoding.

Definition at line 1593 of file yaml.h.

Referenced by yaml_emitter_emit_stream_start().

yaml_char_t* yaml_emitter_s::end

The end of the buffer.

Definition at line 1573 of file yaml.h.

unsigned char* yaml_emitter_s::end

The end of the buffer.

Definition at line 1585 of file yaml.h.

yaml_emitter_state_t* yaml_emitter_s::end

The end of the stack.

Definition at line 1620 of file yaml.h.

yaml_event_t* yaml_emitter_s::end

The end of the event queue.

Definition at line 1633 of file yaml.h.

int* yaml_emitter_s::end

The end of the stack.

Definition at line 1645 of file yaml.h.

yaml_tag_directive_t* yaml_emitter_s::end

The end of the list.

Definition at line 1655 of file yaml.h.

yaml_error_type_t yaml_emitter_s::error

Error type.

Definition at line 1533 of file yaml.h.

Referenced by yaml_emitter_append_tag_directive().

struct { ... } yaml_emitter_s::events
FILE* yaml_emitter_s::file

File output data.

Definition at line 1565 of file yaml.h.

Referenced by yaml_file_write_handler().

int yaml_emitter_s::flow_level
int yaml_emitter_s::flow_plain_allowed

Can the scalar be expessed in the flow plain style?

Definition at line 1717 of file yaml.h.

Referenced by yaml_emitter_analyze_scalar(), and yaml_emitter_select_scalar_style().

yaml_char_t* yaml_emitter_s::handle
size_t yaml_emitter_s::handle_length
yaml_event_t* yaml_emitter_s::head
int yaml_emitter_s::indent
int yaml_emitter_s::indention
struct { ... } yaml_emitter_s::indents
yaml_char_t* yaml_emitter_s::last

The last filled position of the buffer.

Definition at line 1577 of file yaml.h.

unsigned char* yaml_emitter_s::last

The last filled position of the buffer.

Definition at line 1589 of file yaml.h.

int yaml_emitter_s::last_anchor_id

The last assigned anchor id.

Definition at line 1753 of file yaml.h.

Referenced by yaml_emitter_anchor_node(), and yaml_emitter_delete_document_and_anchors().

size_t yaml_emitter_s::length
int yaml_emitter_s::line

The current line.

Definition at line 1676 of file yaml.h.

Referenced by yaml_emitter_emit_stream_start().

yaml_break_t yaml_emitter_s::line_break

The preferred line break.

Definition at line 1613 of file yaml.h.

Referenced by yaml_emitter_emit_stream_start().

int yaml_emitter_s::mapping_context

Is it a mapping context?

Definition at line 1671 of file yaml.h.

Referenced by yaml_emitter_emit_block_sequence_item(), and yaml_emitter_emit_node().

int yaml_emitter_s::multiline

Does the scalar contain line breaks?

Definition at line 1715 of file yaml.h.

Referenced by yaml_emitter_analyze_scalar(), yaml_emitter_check_simple_key(), and yaml_emitter_select_scalar_style().

int yaml_emitter_s::open_ended

If an explicit document end is required?

Definition at line 1684 of file yaml.h.

Referenced by yaml_emitter_emit_document_start(), yaml_emitter_write_block_scalar_hints(), yaml_emitter_write_indicator(), and yaml_emitter_write_plain_scalar().

int yaml_emitter_s::opened

If the stream was already opened?

Definition at line 1738 of file yaml.h.

union { ... } yaml_emitter_s::output
yaml_char_t* yaml_emitter_s::pointer

The current position of the buffer.

Definition at line 1575 of file yaml.h.

unsigned char* yaml_emitter_s::pointer

The current position of the buffer.

Definition at line 1587 of file yaml.h.

const char* yaml_emitter_s::problem

Error description.

Definition at line 1535 of file yaml.h.

Referenced by emit().

struct { ... } yaml_emitter_s::raw_buffer
int yaml_emitter_s::references

The number of references.

Definition at line 1745 of file yaml.h.

Referenced by yaml_emitter_anchor_node().

int yaml_emitter_s::root_context

Is it the document root context?

Definition at line 1667 of file yaml.h.

Referenced by yaml_emitter_emit_node(), and yaml_emitter_write_plain_scalar().

struct { ... } yaml_emitter_s::scalar_data
int yaml_emitter_s::sequence_context

Is it a sequence context?

Definition at line 1669 of file yaml.h.

Referenced by yaml_emitter_emit_node().

int yaml_emitter_s::serialized

If the node has been emitted?

Definition at line 1749 of file yaml.h.

Referenced by yaml_emitter_delete_document_and_anchors(), and yaml_emitter_dump_node().

int yaml_emitter_s::simple_key_context

Is it a simple mapping key context?

Definition at line 1673 of file yaml.h.

Referenced by yaml_emitter_emit_node(), yaml_emitter_process_scalar(), and yaml_emitter_select_scalar_style().

int yaml_emitter_s::single_quoted_allowed

Can the scalar be expressed in the single quoted style?

Definition at line 1721 of file yaml.h.

Referenced by yaml_emitter_analyze_scalar(), and yaml_emitter_select_scalar_style().

size_t yaml_emitter_s::size

The buffer size.

Definition at line 1559 of file yaml.h.

size_t* yaml_emitter_s::size_written

The number of written bytes.

Definition at line 1561 of file yaml.h.

yaml_char_t* yaml_emitter_s::start

The beginning of the buffer.

Definition at line 1571 of file yaml.h.

Referenced by yaml_emitter_analyze_tag(), and yaml_emitter_append_tag_directive().

unsigned char* yaml_emitter_s::start

The beginning of the buffer.

Definition at line 1583 of file yaml.h.

yaml_emitter_state_t* yaml_emitter_s::start

The beginning of the stack.

Definition at line 1618 of file yaml.h.

yaml_event_t* yaml_emitter_s::start

The beginning of the event queue.

Definition at line 1631 of file yaml.h.

int* yaml_emitter_s::start

The beginning of the stack.

Definition at line 1643 of file yaml.h.

yaml_tag_directive_t* yaml_emitter_s::start

The beginning of the list.

Definition at line 1653 of file yaml.h.

yaml_emitter_state_t yaml_emitter_s::state
struct { ... } yaml_emitter_s::states
struct { ... } yaml_emitter_s::string
yaml_scalar_style_t yaml_emitter_s::style

The output style.

Definition at line 1725 of file yaml.h.

Referenced by yaml_emitter_process_scalar(), and yaml_emitter_select_scalar_style().

yaml_char_t* yaml_emitter_s::suffix
size_t yaml_emitter_s::suffix_length
struct { ... } yaml_emitter_s::tag_data
struct { ... } yaml_emitter_s::tag_directives
yaml_event_t* yaml_emitter_s::tail

The tail of the event queue.

Definition at line 1637 of file yaml.h.

Referenced by yaml_emitter_check_empty_mapping(), yaml_emitter_check_empty_sequence(), and yaml_emitter_need_more_events().

yaml_emitter_state_t* yaml_emitter_s::top

The top of the stack.

Definition at line 1622 of file yaml.h.

Referenced by yaml_emitter_analyze_tag(), and yaml_emitter_append_tag_directive().

int* yaml_emitter_s::top

The top of the stack.

Definition at line 1647 of file yaml.h.

yaml_tag_directive_t* yaml_emitter_s::top

The top of the list.

Definition at line 1657 of file yaml.h.

int yaml_emitter_s::unicode

Allow unescaped non-ASCII characters?

Definition at line 1611 of file yaml.h.

Referenced by yaml_emitter_analyze_scalar(), and yaml_emitter_write_double_quoted_scalar().

yaml_char_t* yaml_emitter_s::value

The scalar value.

Definition at line 1711 of file yaml.h.

Referenced by yaml_emitter_analyze_event(), yaml_emitter_analyze_scalar(), and yaml_emitter_process_scalar().

int yaml_emitter_s::whitespace
yaml_write_handler_t* yaml_emitter_s::write_handler

Write handler.

Definition at line 1547 of file yaml.h.

void* yaml_emitter_s::write_handler_data

A pointer for passing to the white handler.

Definition at line 1550 of file yaml.h.


The documentation for this struct was generated from the following file: