class RBI::Tree

Attributes

nodes[R]

Public Class Methods

new(loc: nil, comments: [], &block) click to toggle source
Calls superclass method RBI::NodeWithComments::new
# File lib/rbi/model.rb, line 107
def initialize(loc: nil, comments: [], &block)
  super(loc: loc, comments: comments)
  @nodes = T.let([], T::Array[Node])
  block&.call(self)
end

Public Instance Methods

<<(node) click to toggle source
# File lib/rbi/model.rb, line 114
def <<(node)
  node.parent_tree = self
  @nodes << node
end
accept_printer(v) click to toggle source
# File lib/rbi/printer.rb, line 179
def accept_printer(v)
  v.visit_all(comments)
  v.printn if !comments.empty? && !empty?
  v.visit_all(nodes)
end
add_sig_templates!(with_todo_comment: true) click to toggle source
# File lib/rbi/rewriters/add_sig_templates.rb, line 66
def add_sig_templates!(with_todo_comment: true)
  visitor = Rewriters::AddSigTemplates.new(with_todo_comment: with_todo_comment)
  visitor.visit(self)
end
empty?() click to toggle source
# File lib/rbi/model.rb, line 120
def empty?
  nodes.empty?
end
group_nodes!() click to toggle source
# File lib/rbi/rewriters/group_nodes.rb, line 38
def group_nodes!
  visitor = Rewriters::GroupNodes.new
  visitor.visit(self)
end
index() click to toggle source
# File lib/rbi/index.rb, line 57
def index
  Index.index(self)
end
merge(other) click to toggle source
# File lib/rbi/rewriters/merge_trees.rb, line 318
def merge(other)
  Rewriters::Merge.merge_trees(self, other)
end
nest_non_public_methods!() click to toggle source
# File lib/rbi/rewriters/nest_non_public_methods.rb, line 45
def nest_non_public_methods!
  visitor = Rewriters::NestNonPublicMethods.new
  visitor.visit(self)
end
nest_singleton_methods!() click to toggle source
# File lib/rbi/rewriters/nest_singleton_methods.rb, line 35
def nest_singleton_methods!
  visitor = Rewriters::NestSingletonMethods.new
  visitor.visit(self)
end
oneline?() click to toggle source
# File lib/rbi/printer.rb, line 186
def oneline?
  comments.empty? && empty?
end
sort_nodes!() click to toggle source
# File lib/rbi/rewriters/sort_nodes.rb, line 79
def sort_nodes!
  visitor = Rewriters::SortNodes.new
  visitor.visit(self)
end