Module: Metanorma::Plugin::Lutaml::LutamlEaXmiBase
- Includes:
- Utils, XmiCache, XmiConfig, XmiContextBuilder, XmiPackageFilter, XmiRenderer
- Included in:
- LutamlEaDiagramBlockMacro, LutamlEaXmiPreprocessor, LutamlEnumTableBlockMacro, LutamlKlassTableBlockMacro, LutamlUmlDatamodelDescriptionPreprocessor, LutamlXmiUmlPreprocessor
- Defined in:
- lib/metanorma/plugin/lutaml/lutaml_ea_xmi_base.rb
Constant Summary collapse
- SUPPORTED_NESTED_MACRO =
%w[ before diagram_include_block after include_block package_text ].freeze
- XMI_INDEX_REGEXP =
%r{ ^:lutaml-xmi-index: # Start of the pattern (?<index_name>.+?) # Capture index name ; # Separator (?<index_path>.+?) # Capture index path ;? # Optional separator (?<config_group> # Optional config group \s*config= # Config prefix (?<config_path>.+) # Capture config path )? # End of optional group $ # End of the pattern }x
Constants included from XmiRenderer
XmiRenderer::DEFAULT_RENDER_INCLUDE, XmiRenderer::LIQUID_INCLUDE_PATH, XmiRenderer::RENDER_STYLES_INCLUDES, XmiRenderer::RENDER_STYLE_ATTRIBUTE
Constants included from XmiCache
XmiCache::LUTAML_DOC_CACHE, XmiCache::UML_DOC_CACHE
Constants included from Utils
Instance Method Summary collapse
Methods included from XmiRenderer
#get_name_path, #get_template, #model_representation, #render_table, #template, #template_path
Methods included from XmiContextBuilder
#create_context_object, #create_default_context_object, #fill_in_diagrams_attributes, #fill_in_entities_refs_attributes
Methods included from XmiPackageFilter
#filter_out_all_skipped_packages, #package_entities, #package_hash, #package_level, #select_supplied_packages_by_pattern, #sort_and_filter_out_packages
Methods included from XmiConfig
#config_entity_regexp, #get_guidance, #parse_yaml_config_file
Methods included from XmiCache
#build_drop_options, #build_uml_document, #find_packaged_enum, #find_packaged_klass, #find_packaged_klass_by_path, #find_uml_node_by_xmi_id, #load_ea_extensions, #lutaml_document_from_file_or_cache, #match_parent_chain?, #serialize_enum_drop_by_name, #serialize_klass_drop_by_name
Methods included from Utils
create_liquid_environment, error_signature, load_express_from_folder, load_express_from_index, load_express_repo_from_cache, load_express_repo_from_path, load_express_repositories, notify_render_errors, parse_document_express_indexes, processed_lines, relative_file_path, render_liquid_string, save_express_repo_to_cache
Instance Method Details
#process(document, reader) ⇒ Object
33 34 35 36 37 38 |
# File 'lib/metanorma/plugin/lutaml/lutaml_ea_xmi_base.rb', line 33 def process(document, reader) r = Asciidoctor::PreprocessorNoIfdefsReader.new document, reader.lines input_lines = r.readlines.to_enum Asciidoctor::PreprocessorNoIfdefsReader .new(document, processed_lines(document, input_lines)) end |