class TypeProf::Core::AST::BranchNode::LoopNode::BreakNode::NextNode::CaseNode::CaseMatchNode::AndNode::OrNode
Attributes
e1[R]
e2[R]
Public Class Methods
new(raw_node, e1 = nil, raw_e2 = nil, lenv)
click to toggle source
Calls superclass method
TypeProf::Core::AST::Node::new
# File typeprof-0.30.1/lib/typeprof/core/ast/control.rb, line 315 def initialize(raw_node, e1 = nil, raw_e2 = nil, lenv) super(raw_node, lenv) @e1 = e1 || AST.create_node(raw_node.left, lenv) @e2 = AST.create_node(raw_e2 || raw_node.right, lenv) end
Public Instance Methods
install0(genv)
click to toggle source
# File typeprof-0.30.1/lib/typeprof/core/ast/control.rb, line 325 def install0(genv) ret = Vertex.new(self) v1 = @e1.install(genv) v1 = NilFilter.new(genv, self, v1, false).next_vtx @changes.add_edge(genv, v1, ret) @changes.add_edge(genv, @e2.install(genv), ret) ret end
subnodes(= { e1:, e2: })
click to toggle source
# File typeprof-0.30.1/lib/typeprof/core/ast/control.rb, line 323 def subnodes = { e1:, e2: } def install0(genv) ret = Vertex.new(self) v1 = @e1.install(genv) v1 = NilFilter.new(genv, self, v1, false).next_vtx @changes.add_edge(genv, v1, ret) @changes.add_edge(genv, @e2.install(genv), ret) ret end end