Class: Coradoc::AsciiDoc::Model::List::DefinitionItem

Inherits:
Base
  • Object
show all
Includes:
Anchorable
Defined in:
lib/coradoc/asciidoc/model/list/definition_item.rb

Overview

Definition list item for AsciiDoc definition/labeled lists.

A DefinitionItem contains one or more terms and their associated definitions. In AsciiDoc, this maps to the labeled list syntax:

Term 1:: Definition 1
Term 2::: Definition 2 (deeper level)

Examples:

Create a definition list item

item = Coradoc::AsciiDoc::Model::List::DefinitionItem.new
item.terms << Coradoc::AsciiDoc::Model::Term.new(term: "API")
item.contents << Coradoc::AsciiDoc::Model::TextElement.new("Application Programming Interface")

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Anchorable

#default_anchor, #gen_anchor, included, #initialize

Methods inherited from Base

#block_level?, #inline?, #serialize_content, #simplify_block_content, #to_h, visit, #visit

Instance Attribute Details

#contentsArray<TextElement> (readonly)

Returns The definitions/contents for the terms.

Returns:

  • (Array<TextElement>)

    The definitions/contents for the terms



29
30
31
32
33
34
35
36
37
38
39
# File 'lib/coradoc/asciidoc/model/list/definition_item.rb', line 29

class DefinitionItem < Base
  include Coradoc::AsciiDoc::Model::Anchorable

  attribute :id, :string
  attribute :terms, Coradoc::AsciiDoc::Model::Term, collection: true
  attribute :contents, Coradoc::AsciiDoc::Model::TextElement, collection: true

  def to_adoc(delimiter: '')
    Coradoc::AsciiDoc::Serializer.serialize(self, delimiter: delimiter)
  end
end

#idString? (readonly)

Returns Optional identifier for the definition item.

Returns:

  • (String, nil)

    Optional identifier for the definition item



29
30
31
32
33
34
35
36
37
38
39
# File 'lib/coradoc/asciidoc/model/list/definition_item.rb', line 29

class DefinitionItem < Base
  include Coradoc::AsciiDoc::Model::Anchorable

  attribute :id, :string
  attribute :terms, Coradoc::AsciiDoc::Model::Term, collection: true
  attribute :contents, Coradoc::AsciiDoc::Model::TextElement, collection: true

  def to_adoc(delimiter: '')
    Coradoc::AsciiDoc::Serializer.serialize(self, delimiter: delimiter)
  end
end

#termsArray<Term> (readonly)

Returns The terms being defined (can have multiple).

Returns:

  • (Array<Term>)

    The terms being defined (can have multiple)



29
30
31
32
33
34
35
36
37
38
39
# File 'lib/coradoc/asciidoc/model/list/definition_item.rb', line 29

class DefinitionItem < Base
  include Coradoc::AsciiDoc::Model::Anchorable

  attribute :id, :string
  attribute :terms, Coradoc::AsciiDoc::Model::Term, collection: true
  attribute :contents, Coradoc::AsciiDoc::Model::TextElement, collection: true

  def to_adoc(delimiter: '')
    Coradoc::AsciiDoc::Serializer.serialize(self, delimiter: delimiter)
  end
end

Instance Method Details

#to_adoc(delimiter: '') ⇒ Object



36
37
38
# File 'lib/coradoc/asciidoc/model/list/definition_item.rb', line 36

def to_adoc(delimiter: '')
  Coradoc::AsciiDoc::Serializer.serialize(self, delimiter: delimiter)
end