class Psych::Nodes::Node
The base class for any Node
in a YAML
parse tree. This class should never be instantiated.
Attributes
The children of this node
The column number where this node ends
The line number where this node ends
The column number where this node start
The line number where this node start
An associated tag
Public Class Methods
Source
# File ext/psych/lib/psych/nodes/node.rb, line 32 def initialize @children = [] end
Create a new Psych::Nodes::Node
Public Instance Methods
Source
# File ext/psych/lib/psych/nodes/node.rb, line 39 def each &block return enum_for :each unless block_given? Visitors::DepthFirst.new(block).accept self end
Iterate over each node in the tree. Yields each node to block
depth first.
Source
# File ext/psych/lib/psych/nodes/node.rb, line 48 def to_ruby(symbolize_names: false, freeze: false, strict_integer: false) Visitors::ToRuby.create(symbolize_names: symbolize_names, freeze: freeze, strict_integer: strict_integer).accept(self) end
Convert this node to Ruby.
See also Psych::Visitors::ToRuby
Also aliased as: transform
Source
# File ext/psych/lib/psych/nodes/node.rb, line 57 def yaml io = nil, options = {} require "stringio" real_io = io || StringIO.new(''.encode('utf-8')) Visitors::Emitter.new(real_io, options).accept self return real_io.string unless io io end
Convert this node to YAML
.
See also Psych::Visitors::Emitter
Also aliased as: to_yaml