Class: Markbridge::Parsers::TextFormatter::Handlers::QuoteHandler

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

Overview

Handler for QUOTE elements in s9e/TextFormatter XML

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeQuoteHandler

Returns a new instance of QuoteHandler.



9
10
11
# File 'lib/markbridge/parsers/text_formatter/handlers/quote_handler.rb', line 9

def initialize
  @element_class = AST::Quote
end

Instance Attribute Details

#element_classObject (readonly)

Returns the value of attribute element_class.



28
29
30
# File 'lib/markbridge/parsers/text_formatter/handlers/quote_handler.rb', line 28

def element_class
  @element_class
end

Instance Method Details

#process(element:, parent:) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/markbridge/parsers/text_formatter/handlers/quote_handler.rb', line 13

def process(element:, parent:)
  attrs = extract_attributes(element)
  node =
    AST::Quote.new(
      author: attrs[:author],
      post: attrs[:post_id] || attrs[:post],
      topic: attrs[:topic_id] || attrs[:topic],
      username: attrs[:username],
    )
  parent << node

  # Return node to signal: process children into this node
  node
end