1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
Commit graph

25 commits

Author SHA1 Message Date
why
f1827a2faf * lib/yaml.rb: reworking YAML::Stream to use the new
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
2005-09-13 03:58:33 +00:00
why
ca1dca02b0 * ext/syck/syck.c (syck_new_parser): clear parser on init.
thanks, ts. [ruby-core:02931]

* ext/syck/token.c (sycklex_yaml_utf8): buffer underflow.
  thanks, ts. [ruby-core:02929]

* lib/yaml/baseemitter.rb (indent_text): simpler flow block code.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6403 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-25 14:57:25 +00:00
why
2fa9a0b08c * lib/yaml/rubytypes.rb (to_yaml): added instance variable handling
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
2004-05-06 06:29:56 +00:00
why
a7524e343c * lib/yaml/rubytypes.rb: passing Range tests.
* 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
2004-04-26 23:24:46 +00:00
nobu
3fb4d657d8 * ext/syck/syck.c (syck_io_str_read): get rid of buffer overflow.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5138 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-08 06:03:35 +00:00
why
50629ec6db * ext/syck/syck.c: string buffering bug. decrementing by full
max_size now. [ruby-core:01834]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5077 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-01 15:45:54 +00:00
why
bab2e6cfdf * ext/syck/token.c: removed YYTOKTMP references which
were causing buffer overflows on large block scalars,
  comments, quoted scalars and plain scalars.

* ext/syck/rubyext.c: dynamic changing of buffer size.

* ext/syck/syck.h: default buffer size of 4k.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5032 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-25 19:51:38 +00:00
why
71a8bebf5a * ext/syck/rubyext.c: YAML::Syck::compile method.
* ext/syck/syck.c: Buffer edge bug.

* ext/syck/yaml2byte.c: YAML to bytecode converter.

* ext/syck/bytecode.c: Bytecode parser fixes to empty collections
  and empty strings.

* ext/syck/token.c: Ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4799 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-17 20:53:39 +00:00
why
c76c3349e4 * ext/syck/bytecode.c: Checkin of YAML bytecode support.
* 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
2003-10-14 23:15:19 +00:00
why
360b0a015a * ext/syck/syck.h: Parser definition problems on HP-UX. [ruby-talk:79389]
* ext/syck/handler.c (syck_hdlr_get_anchor): Memory leak.

* ext/syck/syck.s (syck_io_file_read): Bad arguments to fread.

* ext/syck/rubyext.c: Tainting issues.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4414 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-19 16:38:02 +00:00
why
0a75581a37 * ext/syck/syck.h: Added 'syck' yacc prefixes.
* ext/syck/gram.c: ditto.

* ext/syck/token.c: ditto.

* ext/syck: Added ruby.h reference to source files.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4199 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-07-28 19:27:42 +00:00
why
a1e257ec48 * ext/syck/emitter.c: new emitter code.
* ext/syck/rubyext.c: Emitter class.

* lib/yaml.rb: Load Syck emitter, if available.

* lib/yaml/stream.rb: ditto.

* lib/yaml/baseemitter.rb: underlying class for all emitters.

* lib/yaml/rubytypes.rb: use BaseEmitter abstraction.

* lib/yaml/emitter.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4066 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-07-11 22:52:14 +00:00
nobu
a4aa765cb6 *** empty log message ***
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4037 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-07-04 12:51:42 +00:00
why
ae28f1b6b3 * ext/syck/gram.c: added grammar for certain empty sequence entries.
* ext/syck/handler.c, ext/syck/syck.c, ext/syck/syck.h: track bad anchors.

* ext/syck/token.c: added pause token, tag possible circular references.

* lib/yaml/rubytypes.rb: parsing YMD time as Date instance.

* ext/syck/rubyext.c: ditto. DomainType, PrivateType, BadAlias classes.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3954 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-17 16:55:54 +00:00
why
017d4ff10a * ext/syck/token.c: directives choked on a period.
* ext/syck/gram.y: anchors work above a collection. [ruby-core:1071]

* ext/syck/handler.c, ext/syck/syck.c: ensure a fresh strtable between
  parser iterations.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3905 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-05 04:43:05 +00:00
eban
b614db0432 * st.h: define ST_DATA_T_DEFINED for portability.
* 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
2003-05-20 06:48:04 +00:00
why
f5b2e6b149 * lib/syck.c, lib/syck.h, lib/token.c, lib/gram.c: count line numbers
only if line pointer has increased.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3829 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-19 16:37:20 +00:00
why
c601cf5318 * 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
2003-05-15 21:46:47 +00:00
why
42fd4ff686 * ext/ruby/ext/syck/rubyext.c, lib/implicit.re: timestamp repairs to
timezone and milliseconds.

* lib/syck.c (syck_parser_reset_levels): duplicate string literal to avoid warning.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3801 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-15 07:38:10 +00:00
usa
8bdfa739ad * ext/syck/syck.c (syck_parser_pop_level): add prototype.
* ext/syck/syck.c (syck_strndup): should return value.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3797 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-15 00:52:28 +00:00
why
f5a6a36471 * ext/syck/gram.c: sequence-in-map shortcut, transfer methods on
sequence-in-sequence, memory leak in mapping merge. [0.28]

* ext/syck/syck.c: memory leak in domain anchoring. [0.28]

* lib/yaml/rubytypes.rb, lib/yaml/types.rb: eliminated 1.6.x code.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3795 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-14 20:01:09 +00:00
eban
43b1770ed6 * ext/syck/handler.c: add proper casts.
* ext/syck/syck.c: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3787 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-13 11:41:19 +00:00
why
bd810795c5 * lib/yaml/rubytypes.rb: object and struct loading
* 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
2003-05-13 06:34:18 +00:00
why
4b25d0d2cb * ext/syck/gram.c ext/syck/handler.c ext/syck/implicit.c
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
2003-05-10 19:55:18 +00:00
why
55f4dc4c9a Initial checkin of YAML substances.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3772 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-09 21:25:50 +00:00