class RDoc::Markup::Heading
A heading with a level (1-6) and text
RDoc syntax: = Heading 1 == Heading 2 === Heading 3 Markdown syntax: # Heading 1 ## Heading 2 ### Heading 3
Attributes
: Integer
: String
Public Class Methods
Source
# File lib/rdoc/markup/heading.rb, line 47 def initialize(level, text) @level = level @text = text super() end
: (Integer, String) -> void
Calls superclass method
Source
# File lib/rdoc/markup/heading.rb, line 31 def self.to_html @to_html ||= begin markup = Markup.new markup.add_regexp_handling CrossReference::CROSSREF_REGEXP, :CROSSREF @to_html = Markup::ToHtml.new nil def @to_html.handle_regexp_CROSSREF(target) target.text.sub(/^\\/, '') end @to_html end end
A singleton plain HTML formatter for headings. Used for creating labels for the Table of Contents
: () -> RDoc::Markup::ToHtml
Source
# File lib/rdoc/markup/heading.rb, line 25 def self.to_label @to_label ||= Markup::ToLabel.new end
A singleton RDoc::Markup::ToLabel formatter for headings.
: () -> RDoc::Markup::ToLabel
Public Instance Methods
Source
# File lib/rdoc/markup/heading.rb, line 54 def ==(other) other.is_a?(Heading) && other.level == @level && other.text == @text end
: (Object) -> bool
Source
# File lib/rdoc/markup/heading.rb, line 60 def accept(visitor) visitor.accept_heading(self) end
@override
: (untyped) -> void
Source
# File lib/rdoc/markup/heading.rb, line 66 def aref "label-#{self.class.to_label.convert text.dup}" end
An HTML-safe anchor reference for this header.
: () -> String
Source
# File lib/rdoc/markup/heading.rb, line 72 def label(context = nil) label = +"" label << "#{context.aref}-" if context&.respond_to?(:aref) label << aref label end
Creates a fully-qualified label which will include the label from +context+. This helps keep ids unique in HTML.
: (RDoc::Context?) -> String
Source
# File lib/rdoc/markup/heading.rb, line 81 def plain_html text = self.text.dup if matched = text.match(/rdoc-image:[^:]+:(.*)/) text = matched[1] end self.class.to_html.to_html(text) end
HTML markup of the text of this label without the surrounding header element.
: () -> String
Source
# File lib/rdoc/markup/heading.rb, line 93 def pretty_print(q) q.group 2, "[head: #{level} ", ']' do q.pp text end end
@override
: (PP) -> void