Module: Metanorma

Defined in:
lib/metanorma/validate/term.rb,
lib/metanorma/standoc.rb,
lib/metanorma/cleanup/log.rb,
lib/metanorma/cleanup/ref.rb,
lib/metanorma/cleanup/toc.rb,
lib/metanorma/cleanup/reqt.rb,
lib/metanorma/cleanup/text.rb,
lib/metanorma/cleanup/xref.rb,
lib/metanorma/cleanup/amend.rb,
lib/metanorma/cleanup/block.rb,
lib/metanorma/cleanup/image.rb,
lib/metanorma/cleanup/index.rb,
lib/metanorma/cleanup/maths.rb,
lib/metanorma/cleanup/table.rb,
lib/metanorma/cleanup/terms.rb,
lib/metanorma/converter/log.rb,
lib/metanorma/converter/ref.rb,
lib/metanorma/cleanup/inline.rb,
lib/metanorma/cleanup/review.rb,
lib/metanorma/converter/base.rb,
lib/metanorma/converter/init.rb,
lib/metanorma/converter/reqt.rb,
lib/metanorma/validate/image.rb,
lib/metanorma/validate/table.rb,
lib/metanorma/cleanup/bibdata.rb,
lib/metanorma/cleanup/bibitem.rb,
lib/metanorma/cleanup/cleanup.rb,
lib/metanorma/cleanup/section.rb,
lib/metanorma/cleanup/symbols.rb,
lib/metanorma/converter/front.rb,
lib/metanorma/converter/lists.rb,
lib/metanorma/converter/regex.rb,
lib/metanorma/converter/table.rb,
lib/metanorma/converter/terms.rb,
lib/metanorma/converter/utils.rb,
lib/metanorma/validate/schema.rb,
lib/metanorma/cleanup/asciibib.rb,
lib/metanorma/cleanup/metadata.rb,
lib/metanorma/converter/anchor.rb,
lib/metanorma/converter/blocks.rb,
lib/metanorma/converter/inline.rb,
lib/metanorma/converter/macros.rb,
lib/metanorma/converter/render.rb,
lib/metanorma/validate/section.rb,
lib/metanorma/cleanup/footnotes.rb,
lib/metanorma/converter/section.rb,
lib/metanorma/converter/version.rb,
lib/metanorma/validate/validate.rb,
lib/metanorma/cleanup/attachment.rb,
lib/metanorma/cleanup/dochistory.rb,
lib/metanorma/converter/localbib.rb,
lib/metanorma/converter/ref_sect.rb,
lib/metanorma/cleanup/boilerplate.rb,
lib/metanorma/cleanup/mathvariant.rb,
lib/metanorma/cleanup/term_lookup.rb,
lib/metanorma/converter/converter.rb,
lib/metanorma/converter/front_ext.rb,
lib/metanorma/converter/processor.rb,
lib/metanorma/converter/ref_queue.rb,
lib/metanorma/converter/date_utils.rb,
lib/metanorma/cleanup/section_names.rb,
lib/metanorma/converter/front_title.rb,
lib/metanorma/converter/macros_form.rb,
lib/metanorma/converter/macros_link.rb,
lib/metanorma/converter/macros_note.rb,
lib/metanorma/converter/ref_utility.rb,
lib/metanorma/converter/sectiontype.rb,
lib/metanorma/cleanup/merge_bibitems.rb,
lib/metanorma/converter/blocks_image.rb,
lib/metanorma/converter/blocks_notes.rb,
lib/metanorma/converter/macros_embed.rb,
lib/metanorma/converter/macros_nosub.rb,
lib/metanorma/converter/macros_terms.rb,
lib/metanorma/cleanup/xref_localities.rb,
lib/metanorma/converter/macros_inline.rb,
lib/metanorma/converter/macros_number.rb,
lib/metanorma/cleanup/spans_to_bibitem.rb,
lib/metanorma/cleanup/terms_boilerplate.rb,
lib/metanorma/converter/blocks_examples.rb,
lib/metanorma/converter/front_committee.rb,
lib/metanorma/cleanup/boilerplate_liquid.rb,
lib/metanorma/cleanup/terms_designations.rb,
lib/metanorma/converter/front_contributor.rb,
lib/metanorma/converter/front_organisation.rb,
lib/metanorma/converter/isolated_converter.rb,
lib/metanorma/cleanup/spans_to_bibitem_preprocessing.rb

Overview

require “iev”

Defined Under Namespace

Modules: Standoc

Class Method Summary collapse

Class Method Details

.all_modules(mod) ⇒ Object



9
10
11
12
13
# File 'lib/metanorma/converter/version.rb', line 9

def all_modules(mod)
  [mod] + mod.constants.map { |c| mod.const_get(c) }
    .select { |c| c.is_a?(Module) && parent_of(c) == mod }
    .flat_map { |m| all_modules(m) }
end

.parent_of(mod) ⇒ Object



4
5
6
7
# File 'lib/metanorma/converter/version.rb', line 4

def parent_of(mod)
  parent_name = mod.name =~ /::[^:]+\Z/ ? $`.freeze : nil
  Object.const_get(parent_name) if parent_name
end

.versioned(mod, flavour) ⇒ Object



15
16
17
18
# File 'lib/metanorma/converter/version.rb', line 15

def versioned(mod, flavour)
  all_modules(mod).select { |c| defined? c::VERSION }
    .select { |c| c.name =~ /Metanorma::#{flavour}$/ }
end