class ClosingComments::Source::Visitor
Attributes
entities[R]
Public Class Methods
new(content)
click to toggle source
# File lib/closing_comments/source.rb, line 100 def initialize(content) @entities = [] recursively_visit(Parser::Ruby24.parse(content)) entities.freeze end
Private Instance Methods
recursively_visit(node)
click to toggle source
# File lib/closing_comments/source.rb, line 108 def recursively_visit(node) return unless node.is_a?(Parser::AST::Node) visit_current(node) node.children.each(&method(:recursively_visit)) end
visit_current(node)
click to toggle source
# File lib/closing_comments/source.rb, line 114 def visit_current(node) case node.type when :class then entities << Commentable::Class.new(node) when :module then entities << Commentable::Module.new(node) end end