Class: Avm::EacAsciidoctorBase0::Instances::Build

Inherits:
Object
  • Object
show all
Includes:
DocumentsOwner
Defined in:
lib/avm/eac_asciidoctor_base0/instances/build.rb,
lib/avm/eac_asciidoctor_base0/instances/build/theme.rb,
lib/avm/eac_asciidoctor_base0/instances/build/document.rb,
lib/avm/eac_asciidoctor_base0/instances/build/document/media.rb,
lib/avm/eac_asciidoctor_base0/instances/build/document/body_target.rb,
lib/avm/eac_asciidoctor_base0/instances/build/document/header_lines.rb,
lib/avm/eac_asciidoctor_base0/instances/build/document/pre_process_line.rb

Defined Under Namespace

Classes: Document, Theme

Constant Summary collapse

SOURCE_EXTNAMES =
%w[.adoc .asc].freeze

Instance Method Summary collapse

Methods included from DocumentsOwner

#document, #documents

Instance Method Details

#default_target_directoryPathname

Returns:

  • (Pathname)


32
33
34
# File 'lib/avm/eac_asciidoctor_base0/instances/build.rb', line 32

def default_target_directory
  source.path.join('build/site')
end

#performObject



24
25
26
27
28
29
# File 'lib/avm/eac_asciidoctor_base0/instances/build.rb', line 24

def perform
  infov 'Documents to build', root_document.tree_documents_count
  target_directory.clear
  theme.perform
  root_document.perform
end

#root_documentObject



36
37
38
39
# File 'lib/avm/eac_asciidoctor_base0/instances/build.rb', line 36

def root_document
  ::Avm::EacAsciidoctorBase0::Instances::Build::Document
    .new(self, nil, source.root_document)
end

#sourceAvm::EacAsciidoctorBase0::Sources::Base



42
43
44
# File 'lib/avm/eac_asciidoctor_base0/instances/build.rb', line 42

def source
  instance.application.local_source
end

#target_directoryObject



46
47
48
49
50
# File 'lib/avm/eac_asciidoctor_base0/instances/build.rb', line 46

def target_directory
  ::EacRubyUtils::Fs::ClearableDirectory.new(
    options[OPTION_TARGET_DIRECTORY] || default_target_directory
  )
end