Class: Docks::Tags::Example

Inherits:
Base
  • Object
show all
Defined in:
lib/docks/tags/example_tag.rb

Constant Summary

Constants included from Processors

Processors::CODE_BLOCK_INDICATOR, Processors::HEADING_INDICATOR, Processors::HEADING_UNDERLINE_INDICATOR, Processors::LIST_ITEM_INDICATOR

Instance Attribute Summary

Attributes inherited from Base

#name

Instance Method Summary collapse

Methods inherited from Base

#multiline?, #multiple_allowed?, #parseable?, #setup_post_processors, #synonyms, #type

Methods included from Processors

#code_block_with_language_and_description, #ensure_valid_demo_type, #join_with_smart_line_breaks, #multiline_description, #name_and_parenthetical, #parenthetical_options, #split_on_characters, #split_on_commas_spaces_and_pipes, #split_on_top_level_parens_commas_and_pipes, #split_types, #stringy_boolean

Constructor Details

#initializeExample

Returns a new instance of Example.



4
5
6
7
# File 'lib/docks/tags/example_tag.rb', line 4

def initialize
  @name = :example
  @multiple_allowed = true
end

Instance Method Details

#process(symbol) ⇒ Object



9
10
11
12
13
14
15
16
17
# File 'lib/docks/tags/example_tag.rb', line 9

def process(symbol)
  symbol.update(@name) do |examples|
    examples.map do |example|
      example = code_block_with_language_and_description(example)
      example[:language] ||= Docks::Languages.extension_for_file(Docks.current_file)
      OpenStruct.new(example)
    end
  end
end