Class: Markbridge::Parsers::BBCode::Handlers::EmailHandler

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

Overview

Handler for EMAIL tags Similar to UrlHandler but for email addresses

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from BaseHandler

#auto_closeable?, #on_close

Constructor Details

#initializeEmailHandler

Returns a new instance of EmailHandler.



10
11
12
# File 'lib/markbridge/parsers/bbcode/handlers/email_handler.rb', line 10

def initialize
  @element_class = AST::Email
end

Instance Attribute Details

#element_classObject (readonly)

Returns the value of attribute element_class.



20
21
22
# File 'lib/markbridge/parsers/bbcode/handlers/email_handler.rb', line 20

def element_class
  @element_class
end

Instance Method Details

#on_open(token:, context:, registry:, tokens: nil) ⇒ Object



14
15
16
17
18
# File 'lib/markbridge/parsers/bbcode/handlers/email_handler.rb', line 14

def on_open(token:, context:, registry:, tokens: nil)
  address = token.attrs[:email] || token.attrs[:address] || token.attrs[:option]
  element = AST::Email.new(address:)
  context.push(element, token:)
end