diff options
author | why <why@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2003-05-15 21:46:47 +0000 |
---|---|---|
committer | why <why@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2003-05-15 21:46:47 +0000 |
commit | c601cf5318c035460250284057a62b7eddcb79fc (patch) | |
tree | 65ef3ad8b83ecd970f50ff2c9dc63ed354a0ee33 /ext/syck/syck.h | |
parent | d8bd0ea32ed5952ea4052d48a1142f27e5c1af74 (diff) | |
download | ruby-c601cf5318c035460250284057a62b7eddcb79fc.tar.gz |
* lib/gram.c: fixes to one-line documents and end of stream documents.
* lib/syck.c, lib/syck.h: add root_on_error to parser struct, specifying
the symbol to be returned on a parse error.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3807 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/syck/syck.h')
-rw-r--r-- | ext/syck/syck.h | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/ext/syck/syck.h b/ext/syck/syck.h index 926060219e..7b4f78714e 100644 --- a/ext/syck/syck.h +++ b/ext/syck/syck.h @@ -10,7 +10,7 @@ #ifndef SYCK_H #define SYCK_H -#define SYCK_VERSION "0.28" +#define SYCK_VERSION "0.29" #define YAML_DOMAIN "yaml.org,2002" #include <stdio.h> @@ -112,6 +112,7 @@ struct _syck_node { long len; } *str; } data; + // Shortcut node void *shortcut; }; @@ -142,7 +143,7 @@ enum syck_level_status { struct _syck_parser { // Root node - SYMID root; + SYMID root, root_on_error; // Implicit typing flag int implicit_typing, taguri_expansion; // Scripting language function to handle nodes @@ -213,6 +214,7 @@ long syck_io_file_read( char *, SyckIoFile *, long, long ); long syck_io_str_read( char *, SyckIoStr *, long, long ); SyckParser *syck_new_parser(); void syck_free_parser( SyckParser * ); +void syck_parser_set_root_on_error( SyckParser *, SYMID ); void syck_parser_implicit_typing( SyckParser *, int ); void syck_parser_taguri_expansion( SyckParser *, int ); void syck_parser_handler( SyckParser *, SyckNodeHandler ); @@ -222,6 +224,7 @@ void syck_parser_str( SyckParser *, char *, long, SyckIoStrRead ); void syck_parser_str_auto( SyckParser *, char *, SyckIoStrRead ); SyckLevel *syck_parser_current_level( SyckParser * ); void syck_parser_add_level( SyckParser *, int, enum syck_level_status ); +void syck_parser_pop_level( SyckParser * ); void free_any_io( SyckParser * ); long syck_parser_read( SyckParser * ); long syck_parser_readlen( SyckParser *, long ); @@ -244,13 +247,14 @@ char *syck_str_read( SyckNode * ); SyckNode *syck_new_map( SYMID, SYMID ); void syck_map_add( SyckNode *, SYMID, SYMID ); SYMID syck_map_read( SyckNode *, enum map_part, long ); -long syck_map_count( SyckNode * ); void syck_map_assign( SyckNode *, enum map_part, long, SYMID ); +long syck_map_count( SyckNode * ); void syck_map_update( SyckNode *, SyckNode * ); SyckNode *syck_new_seq( SYMID ); void syck_seq_add( SyckNode *, SYMID ); SYMID syck_seq_read( SyckNode *, long ); long syck_seq_count( SyckNode * ); + void apply_seq_in_map( SyckParser *, SyckNode * ); #if defined(__cplusplus) |