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/children.rb,
lib/avm/eac_asciidoctor_base0/instances/build/document/body_source.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)


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

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

#performObject



19
20
21
22
23
24
# File 'lib/avm/eac_asciidoctor_base0/instances/build.rb', line 19

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

#pre_processed_directoryEacRubyUtils::Fs::ClearableDirectory

Returns:

  • (EacRubyUtils::Fs::ClearableDirectory)


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

def pre_processed_directory
  ::EacRubyUtils::Fs::ClearableDirectory.new(source.path.join('build/pre_processed'))
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