mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* lib/yaml/basenode.rb (YAML::BaseNode::match_segment): fix typo.
[ruby-dev:27237], [ruby-core:05854] * lib/yaml/tag.rb (Module#yaml_as): suppress warnings. * lib/yaml/types.rb (YAML::PrivateType, YAML::DomainType): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9323 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
f307fa8513
commit
7567345876
5 changed files with 63 additions and 41 deletions
|
@ -1,45 +1,52 @@
|
|||
# -*- mode: ruby; ruby-indent-level: 4 -*- vim: sw=4
|
||||
#
|
||||
# Classes required by the full core typeset
|
||||
#
|
||||
|
||||
module YAML
|
||||
|
||||
#
|
||||
# Default private type
|
||||
#
|
||||
class PrivateType
|
||||
#
|
||||
# Default private type
|
||||
#
|
||||
class PrivateType
|
||||
def self.tag_subclasses?; false; end
|
||||
attr_accessor :type_id, :value
|
||||
def initialize( type, val )
|
||||
@type_id = type; @value = val
|
||||
attr_accessor :type_id, :value
|
||||
verbose, $VERBOSE = $VERBOSE, nil
|
||||
def initialize( type, val )
|
||||
@type_id = type; @value = val
|
||||
@value.taguri = "x-private:#{ @type_id }"
|
||||
end
|
||||
def to_yaml( opts = {} )
|
||||
end
|
||||
def to_yaml( opts = {} )
|
||||
@value.to_yaml( opts )
|
||||
end
|
||||
end
|
||||
end
|
||||
ensure
|
||||
$VERBOSE = verbose
|
||||
end
|
||||
|
||||
#
|
||||
# Default domain type
|
||||
#
|
||||
class DomainType
|
||||
def self.tag_subclasses?; false; end
|
||||
attr_accessor :domain, :type_id, :value
|
||||
def initialize( domain, type, val )
|
||||
@domain = domain; @type_id = type; @value = val
|
||||
attr_accessor :domain, :type_id, :value
|
||||
verbose, $VERBOSE = $VERBOSE, nil
|
||||
def initialize( domain, type, val )
|
||||
@domain = domain; @type_id = type; @value = val
|
||||
@value.taguri = "tag:#{ @domain }:#{ @type_id }"
|
||||
end
|
||||
def to_yaml( opts = {} )
|
||||
end
|
||||
def to_yaml( opts = {} )
|
||||
@value.to_yaml( opts )
|
||||
end
|
||||
end
|
||||
end
|
||||
ensure
|
||||
$VERBOSE = verbose
|
||||
end
|
||||
|
||||
#
|
||||
# Unresolved objects
|
||||
#
|
||||
class Object
|
||||
def self.tag_subclasses?; false; end
|
||||
def to_yaml( opts = {} )
|
||||
def to_yaml( opts = {} )
|
||||
YAML::quick_emit( object_id, opts ) do |out|
|
||||
out.map( "tag:ruby.yaml.org,2002:object:#{ @class }", to_yaml_style ) do |map|
|
||||
@ivars.each do |k,v|
|
||||
|
@ -47,31 +54,31 @@ module YAML
|
|||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
#
|
||||
# YAML Hash class to support comments and defaults
|
||||
#
|
||||
class SpecialHash < ::Hash
|
||||
attr_accessor :default
|
||||
#
|
||||
# YAML Hash class to support comments and defaults
|
||||
#
|
||||
class SpecialHash < ::Hash
|
||||
attr_accessor :default
|
||||
def inspect
|
||||
self.default.to_s
|
||||
end
|
||||
def to_s
|
||||
self.default.to_s
|
||||
end
|
||||
def update( h )
|
||||
if YAML::SpecialHash === h
|
||||
@default = h.default if h.default
|
||||
end
|
||||
super( h )
|
||||
end
|
||||
def to_s
|
||||
self.default.to_s
|
||||
end
|
||||
def update( h )
|
||||
if YAML::SpecialHash === h
|
||||
@default = h.default if h.default
|
||||
end
|
||||
super( h )
|
||||
end
|
||||
def to_yaml( opts = {} )
|
||||
opts[:DefaultKey] = self.default
|
||||
super( opts )
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
#
|
||||
# Builtin collection: !omap
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue