Class: Psych::Nodes::Node
Relationships & Source Files | |
Extension / Inclusion / Inheritance Descendants | |
Subclasses:
|
|
Super Chains via Extension / Inclusion / Inheritance | |
Instance Chain:
self,
Enumerable
|
|
Inherits: | Object |
Defined in: | ext/psych/lib/psych/nodes/node.rb |
Overview
The base class for any Node
in a YAML parse tree. This class should never be instantiated.
Class Method Summary
-
.new ⇒ Node
constructor
Create a new
Node
Instance Attribute Summary
Instance Method Summary
-
#each(&block)
Iterate over each node in the tree.
-
#to_ruby
(also: #transform)
Convert this node to Ruby.
- #to_yaml(io = nil, options = {})
- #transform
-
#yaml(io = nil, options = {})
(also: #to_yaml)
Convert this node to YAML.
Constructor Details
.new ⇒ Node
Create a new Node
# File 'ext/psych/lib/psych/nodes/node.rb', line 20
def initialize @children = [] end
Instance Attribute Details
#children (readonly)
The children of this node
# File 'ext/psych/lib/psych/nodes/node.rb', line 14
attr_reader :children
#tag (readonly)
An associated tag
# File 'ext/psych/lib/psych/nodes/node.rb', line 17
attr_reader :tag
Instance Method Details
#each(&block)
Iterate over each node in the tree. Yields each node to block
depth first.
# File 'ext/psych/lib/psych/nodes/node.rb', line 27
def each &block return enum_for :each unless block_given? Visitors::DepthFirst.new(block).accept self end
#to_ruby Also known as: #transform
Convert this node to Ruby.
See also ::Psych::Visitors::ToRuby
#to_yaml(io = nil, options = {})
[ GitHub ]# File 'ext/psych/lib/psych/nodes/node.rb', line 52
alias :to_yaml :yaml
#transform
[ GitHub ]# File 'ext/psych/lib/psych/nodes/node.rb', line 39
alias :transform :to_ruby
#yaml(io = nil, options = {}) Also known as: #to_yaml
Convert this node to YAML.
See also ::Psych::Visitors::Emitter