emitter.
* lib/yaml/stream.rb: ditto.
* lib/yaml/rubytypes.rb: added Object#yaml_new.
* lib/yaml/tag.rb: the tag_subclasses? method now
shows up in the class. allow taguri to be set using an accessor.
continue support of Object#to_yaml_type.
* ext/syck/rubyext.c: new emitter code. yaml_new and yaml_initialize
get called, should they be present. consolidated all the diaspora of internal
node types into the family below YAML::Syck::Node -- Map,
Seq, Scalar -- all of whom are SyckNode structs pointing to
Ruby data. moved Object#yaml_new into the node_import and made it the
default behavior. the target_class is always called wih yaml_new, prepended
a parameter, which is the klass. loaded nodes through GenericResolver show their style.
new Resolver#tagurize converts type ids to taguris.
* ext/syck/implicit.re: were 'y' and 'n' seriously omitted??
* ext/syck/emitter.c: renovated emitter, walks the tree in advance.
consolidated redundant block_styles struct into
the scalar_style struct. (this means loaded nodes can now
be sent back to emitter and preserve at least its very basic
formatting.)
* ext/syck/gram.c: headless documents of any kind allowed.
* ext/syck/node.c: new syck_replace_str methods and syck_empty_*
methods for rewriting node contents, while keeping the ID
and other setup info. added syck_seq_assign.
* ext/syck/syck.h: reflect block_styles and new node functions.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
for Ranges, Strings, Structs, Regexps.
* lib/yaml/rubytypes.rb (to_yaml_fold): new method for setting a
String's flow style.
* lib/yaml.rb (YAML::object_maker): now uses Object.allocate.
* ext/syck/gram.c: fixed transfer methods on structs, broke it
last commit.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6252 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/syck/syck.h: version 0.44.
* ext/syck/gram.c: transfers no longer open an indentation.
fixed transfers which precede blocks.
* ext/syck/token.c: ditto.
* ext/syck/syck.c: fixed segfault if an anchor has been released already.
* ext/syck/node.c (syck_free_members): organized order of free'd nodes.
* ext/syck/rubyext.c (syck_emitter_write_m): test for proper string with
StringValue.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6221 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/syck/gram.c: Ditto.
* ext/syck/syck.c: Ditto.
* ext/syck/token.c: Ditto.
* ext/syck/handler.c: Ditto.
* ext/syck/handler.c: Now using 'tag' rather than 'taguri' in type URIs.
* ext/syck/rubyext.c: Ditto (on both counts).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4769 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/syck/syck.h: add typedef, st_data_t for Ruby 1.6.
* ext/syck/syck.c (syck_st_free_nodes): return int.
* ext/syck/syck.c (syck_add_sym): cast the data to st_data_t
to avoid error on bcc32.
* ext/syck/syck.c (syck_lookup_sym): ditto.
* ext/syck/syck.c (syck_free_parser): NULL is not integer.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3834 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* 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
* lib/yaml.rb: YAML::detect_implicit will discover typing for a Ruby string
* ext/syck/: Fixed portable comments, misuse of NULL and methods without return VALUEs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
ext/syck/node.c ext/syck/rubyext.c ext/syck/syck.c
ext/syck/syck.h ext/syck/token.c: updated to Syck 0.27
* lib/yaml/loader.rb: new YAML::Loader class
* lib/yaml.rb: loading of type families leverages YAML::DefaultLoader
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3778 b2dd03c8-39d4-4d8f-98ff-823fe69b080e