class RBS::Annotate::Formatter
Attributes
buffer[R]
Public Class Methods
each_part(doc) { |document| ... }
click to toggle source
# File rbs-3.4.0/lib/rbs/annotate/formatter.rb, line 60 def self.each_part(doc, &block) if block document = case doc when String raise when RDoc::Comment document = doc.parse when RDoc::Markup::Document document = doc end if document.file yield document else document.each do |d| each_part(d, &block) end end else enum_for :each_part, doc end end
new()
click to toggle source
# File rbs-3.4.0/lib/rbs/annotate/formatter.rb, line 8 def initialize() @buffer = +"" @pending_separator = nil end
translate(doc)
click to toggle source
# File rbs-3.4.0/lib/rbs/annotate/formatter.rb, line 84 def self.translate(doc) if doc.file formatter = RDoc::Markup::ToMarkdown.new doc.accept(formatter).strip.lines.map(&:rstrip).join("\n") end end
Public Instance Methods
<<(s)
click to toggle source
# File rbs-3.4.0/lib/rbs/annotate/formatter.rb, line 13 def <<(s) if s if s.is_a?(RDoc::Markup::Document) s = self.class.translate(s) or raise end s = s.rstrip unless s.empty? if ss = @pending_separator buffer << ss buffer << "\n" @pending_separator = nil end buffer << s buffer << "\n" end end self end
empty?()
click to toggle source
# File rbs-3.4.0/lib/rbs/annotate/formatter.rb, line 44 def empty? buffer.empty? end
format(newline_at_end:)
click to toggle source
# File rbs-3.4.0/lib/rbs/annotate/formatter.rb, line 48 def format(newline_at_end:) unless buffer.empty? if newline_at_end buffer.strip + "\n\n" else buffer.strip + "\n" end else buffer end end
margin(separator: "")
click to toggle source
# File rbs-3.4.0/lib/rbs/annotate/formatter.rb, line 36 def margin(separator: "") unless buffer.empty? @pending_separator = separator end self end