Class: RBS::Trace::InlineCommentVisitor
- Inherits:
-
Prism::Visitor
- Object
- Prism::Visitor
- RBS::Trace::InlineCommentVisitor
- Defined in:
- lib/rbs/trace/inline_comment_visitor.rb
Instance Method Summary collapse
-
#initialize(decls, comments, comment_format) ⇒ InlineCommentVisitor
constructor
A new instance of InlineCommentVisitor.
- #visit_class_node(node) ⇒ Object
- #visit_def_node(node) ⇒ Object
- #visit_module_node(node) ⇒ Object
Constructor Details
#initialize(decls, comments, comment_format) ⇒ InlineCommentVisitor
Returns a new instance of InlineCommentVisitor.
7 8 9 10 11 12 13 14 |
# File 'lib/rbs/trace/inline_comment_visitor.rb', line 7 def initialize(decls, comments, comment_format) @decls = decls @comments = comments @comment_prefix = comment_format == :rbs_colon ? "#:" : "# @rbs" @context = [] #: Array[Symbol] super() end |
Instance Method Details
#visit_class_node(node) ⇒ Object
18 19 20 21 22 |
# File 'lib/rbs/trace/inline_comment_visitor.rb', line 18 def visit_class_node(node) with_context node do super end end |
#visit_def_node(node) ⇒ Object
34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/rbs/trace/inline_comment_visitor.rb', line 34 def visit_def_node(node) member = find_method_definition(node.name) if member lineno = node.location.start_line - 1 indent = " " * node.location.start_column overloads = OverloadCompact.new(member.overloads).call comment = overloads.map(&:method_type).join(" | ") @comments[lineno] = "#{indent}#{@comment_prefix} #{comment}\n" end super end |
#visit_module_node(node) ⇒ Object
26 27 28 29 30 |
# File 'lib/rbs/trace/inline_comment_visitor.rb', line 26 def visit_module_node(node) with_context node do super end end |