class Paru::PandocFilter::DefinitionListItem

A DefinitionListItem is a helper node to represent the pair of a term and its definition in a DefinitionList

@!attribute term

@return [Block]

@!attribute definition

@return [List]

Attributes

definition[RW]
term[RW]

Public Class Methods

new(item) click to toggle source

Create a new DefinitionListItem

@param item [Array] the [term, definition]

Calls superclass method
# File lib/paru/filter/definition_list_item.rb, line 39
def initialize(item)
    super []

    @term = Block.new item[0]
    @term.parent = self
    @children << @term

    @definition = List.new item[1]
    @definition.parent = self
    @children << @definition
end

Public Instance Methods

to_array() click to toggle source

Convert this DefinitionListItem to a pair of term and definition

@return [Array]

# File lib/paru/filter/definition_list_item.rb, line 62
def to_array
    term = @term.children.map{|c| c.markdown.strip}.select{|c| !c.empty?}.join(" ").strip
    definition = @definition.children.map{|c| c.children.map{|d| d.markdown}}.join("\n").strip
    [term, definition]
end
to_ast() click to toggle source

Create an AST representation of this DefinitionListItem

# File lib/paru/filter/definition_list_item.rb, line 52
def to_ast
    [
        @term.ast_contents,
        @definition.ast_contents
    ]
end