class TypeProf::Core::AST::LiteralNode::NilNode::TrueNode::FalseNode::IntegerNode::FloatNode::RationalNode::ComplexNode::SymbolNode::InterpolatedSymbolNode::StringNode::InterpolatedStringNode::RegexpNode::InterpolatedRegexpNode::MatchLastLineNode::InterpolatedMatchLastLineNode::RangeNode
Attributes
begin[R]
end[R]
Public Class Methods
new(raw_node, lenv)
click to toggle source
Calls superclass method
TypeProf::Core::AST::Node::new
# File typeprof-0.30.1/lib/typeprof/core/ast/value.rb, line 216 def initialize(raw_node, lenv) super(raw_node, lenv) @begin = raw_node.left ? AST.create_node(raw_node.left, lenv) : DummyNilNode.new(raw_node, lenv) @end = raw_node.right ? AST.create_node(raw_node.right, lenv) : DummyNilNode.new(raw_node, lenv) end
Public Instance Methods
install0(genv)
click to toggle source
# File typeprof-0.30.1/lib/typeprof/core/ast/value.rb, line 226 def install0(genv) elem = Vertex.new(self) @changes.add_edge(genv, @begin.install(genv), elem) @changes.add_edge(genv, @end.install(genv), elem) Source.new(genv.gen_range_type(elem)) end
subnodes(= { begin:, end: })
click to toggle source
# File typeprof-0.30.1/lib/typeprof/core/ast/value.rb, line 224 def subnodes = { begin:, end: } def install0(genv) elem = Vertex.new(self) @changes.add_edge(genv, @begin.install(genv), elem) @changes.add_edge(genv, @end.install(genv), elem) Source.new(genv.gen_range_type(elem)) end end