Class: AsciidoctorDitaMap::Map

Inherits:
Topic
  • Object
show all
Defined in:
lib/dita-map/map.rb

Instance Attribute Summary collapse

Attributes inherited from Topic

#title, #type

Instance Method Summary collapse

Constructor Details

#initialize(input, base_dir, attributes = []) ⇒ Map

Returns a new instance of Map.



32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# File 'lib/dita-map/map.rb', line 32

def initialize input, base_dir, attributes = []
  if input.empty?
    @id       = nil
    @title    = nil
    @type     = nil
    @includes = []
  else
    Asciidoctor::Extensions.register do
      include_processor CatalogIncludeDirectives
    end

    doc = Asciidoctor.load input, safe: :safe, catalog_assets: true, attributes: attributes, base_dir: base_dir

    @includes = doc.catalog[:include_files] ? doc.catalog[:include_files] : []
    @id       = doc.id ? doc.id.gsub(/["']/, '') : nil
    @title    = doc.title ? doc.title.gsub(/<[^>]*>/, '') : nil
    @type     = get_content_type doc.attributes
  end
end

Instance Attribute Details

#idObject

Returns the value of attribute id.



30
31
32
# File 'lib/dita-map/map.rb', line 30

def id
  @id
end

#includesObject

Returns the value of attribute includes.



30
31
32
# File 'lib/dita-map/map.rb', line 30

def includes
  @includes
end