Sha256: 6310a93e42ecec134181b7b707f8a5351a1b7d884fb17216b6b72bbbde378251

Contents?: true

Size: 940 Bytes

Versions: 9

Compression:

Stored size: 940 Bytes

Contents

# frozen_string_literal: true

require "liquid"
require "asciidoctor"
require "asciidoctor/reader"
require "lutaml"
require "lutaml/uml"
require "lutaml/xmi"
require "metanorma/plugin/lutaml/utils"
require "metanorma/plugin/lutaml/asciidoctor/preprocessor"
require "metanorma/plugin/lutaml/lutaml_ea_xmi_base"

module Metanorma
  module Plugin
    module Lutaml
      #  Macro for quick rendering of datamodel attributes/values table
      #  @example [lutaml_uml_attributes_table,path/to/lutaml,EntityName]
      class LutamlUmlDatamodelDescriptionPreprocessor <
          ::Asciidoctor::Extensions::Preprocessor
        include LutamlEaXmiBase

        MACRO_REGEXP =
          /\[lutaml_uml_datamodel_description,([^,]+),?(.+)?\]/.freeze

        private

        def parse_result_document(full_path, _guidance = nil)
          ::Lutaml::Parser.parse(File.new(full_path, encoding: "UTF-8")).first
        end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
metanorma-plugin-lutaml-0.7.20 lib/metanorma/plugin/lutaml/lutaml_uml_datamodel_description_preprocessor.rb
metanorma-plugin-lutaml-0.7.19 lib/metanorma/plugin/lutaml/lutaml_uml_datamodel_description_preprocessor.rb
metanorma-plugin-lutaml-0.7.18 lib/metanorma/plugin/lutaml/lutaml_uml_datamodel_description_preprocessor.rb
metanorma-plugin-lutaml-0.7.17 lib/metanorma/plugin/lutaml/lutaml_uml_datamodel_description_preprocessor.rb
metanorma-plugin-lutaml-0.7.16 lib/metanorma/plugin/lutaml/lutaml_uml_datamodel_description_preprocessor.rb
metanorma-plugin-lutaml-0.7.15 lib/metanorma/plugin/lutaml/lutaml_uml_datamodel_description_preprocessor.rb
metanorma-plugin-lutaml-0.7.14 lib/metanorma/plugin/lutaml/lutaml_uml_datamodel_description_preprocessor.rb
metanorma-plugin-lutaml-0.7.13 lib/metanorma/plugin/lutaml/lutaml_uml_datamodel_description_preprocessor.rb
metanorma-plugin-lutaml-0.7.12 lib/metanorma/plugin/lutaml/lutaml_uml_datamodel_description_preprocessor.rb