Class: Markbridge::Parsers::HTML::Handlers::HeadingHandler

Inherits:
BaseHandler
  • Object
show all
Defined in:
lib/markbridge/parsers/html/handlers/heading_handler.rb

Overview

Handles

through

by creating a Heading element with the matching level and processing children into it.

Instance Method Summary collapse

Instance Method Details

#element_classClass

Returns AST::Heading.

Returns:

  • (Class)

    AST::Heading



22
23
24
# File 'lib/markbridge/parsers/html/handlers/heading_handler.rb', line 22

def element_class
  AST::Heading
end

#process(element:, parent:) ⇒ AST::Heading

Returns the created heading, so children get processed into it.

Parameters:

  • element (Nokogiri::XML::Element)

    the heading element

  • parent (AST::Element)

    the parent AST node

Returns:

  • (AST::Heading)

    the created heading, so children get processed into it



13
14
15
16
17
18
19
# File 'lib/markbridge/parsers/html/handlers/heading_handler.rb', line 13

def process(element:, parent:)
  level = element.name.delete_prefix("h").to_i.clamp(1, 6)
  heading = AST::Heading.new(level:)
  parent << heading

  heading
end