Class: Docbert::Parser::ExampleNode
- Inherits:
-
Object
- Object
- Docbert::Parser::ExampleNode
- Defined in:
- lib/docbert/parser/example_node.rb
Direct Known Subclasses
Constant Summary collapse
- BLANK_LINE =
Kramdown::Parser::Kramdown::BLANK_LINE
- EXAMPLE_KEYWORDS =
'Given|When|Then|And|But|\\||"""'
- EXAMPLE_OUTLINE_KEYWORDS =
"#{EXAMPLE_KEYWORDS}|Examples:"
Class Method Summary collapse
- .as_background(element_factory, fragment) ⇒ Object
- .as_definition(element_factory, fragment) ⇒ Object
- .as_example(element_factory, fragment) ⇒ Object
- .as_example_outline(element_factory, fragment) ⇒ Object
Instance Method Summary collapse
-
#initialize(type, start_re, keywords, element_factory, fragment) ⇒ ExampleNode
constructor
A new instance of ExampleNode.
- #to_element ⇒ Object
Constructor Details
#initialize(type, start_re, keywords, element_factory, fragment) ⇒ ExampleNode
Returns a new instance of ExampleNode.
33 34 35 36 37 38 39 40 41 |
# File 'lib/docbert/parser/example_node.rb', line 33 def initialize(type, start_re, keywords, element_factory, fragment) self.type = type self.start_re = start_re self.body_re = /(?:\s*(?:#{keywords}).+?\n|#{BLANK_LINE})+/m self.element_factory = element_factory self.fragment = fragment parse end |
Class Method Details
.as_background(element_factory, fragment) ⇒ Object
9 10 11 12 13 14 15 |
# File 'lib/docbert/parser/example_node.rb', line 9 def self.as_background(element_factory, fragment) new(:example_background, EXAMPLE_BACKGROUND_START, EXAMPLE_KEYWORDS, element_factory, fragment) end |
.as_definition(element_factory, fragment) ⇒ Object
17 18 19 |
# File 'lib/docbert/parser/example_node.rb', line 17 def self.as_definition(element_factory, fragment) DefinitionNode.new(element_factory, fragment) end |
.as_example(element_factory, fragment) ⇒ Object
21 22 23 |
# File 'lib/docbert/parser/example_node.rb', line 21 def self.as_example(element_factory, fragment) new(:example, EXAMPLE_START, EXAMPLE_KEYWORDS, element_factory, fragment) end |
.as_example_outline(element_factory, fragment) ⇒ Object
25 26 27 28 29 30 31 |
# File 'lib/docbert/parser/example_node.rb', line 25 def self.as_example_outline(element_factory, fragment) new(:example_outline, EXAMPLE_OUTLINE_START, EXAMPLE_OUTLINE_KEYWORDS, element_factory, fragment) end |
Instance Method Details
#to_element ⇒ Object
43 44 45 |
# File 'lib/docbert/parser/example_node.rb', line 43 def to_element element end |