Sha256: 069d6d58f73055a115a4a46d1428acb97a3f6aa58306467532623d6e728c73dc
Contents?: true
Size: 1.46 KB
Versions: 15
Compression:
Stored size: 1.46 KB
Contents
# frozen_string_literal: true require "metanorma/cli/ui" module Metanorma class Flavor SUPPORTED_GEMS = [ "metanorma-iso", "metanorma-iec", "metanorma-ieee", "metanorma-ietf", "metanorma-bipm", "metanorma-cc", "metanorma-csa", "metanorma-iho", "metanorma-jis", # "metanorma-m3aawg", "metanorma-generic", "metanorma-standoc", "metanorma-un", "metanorma-ogc", "metanorma-itu", ].freeze PRIVATE_SUPPORTED_GEMS = [ "metanorma-ribose", # "metanorma-mpfa", "metanorma-nist", ].freeze def self.activate new.activate end def self.load_flavors new.load_flavors end def activate flavors.each do |flavor_name| gem(flavor_name) rescue LoadError, MissingSpecError => _e Metanorma::Cli::UI.debug("#{flavor_name} is not present!") end end def load_flavors flavors.each do |flavor_name| require(flavor_name) rescue LoadError => _e gem_loading_error(flavor_name) end end private def flavors @flavors ||= [SUPPORTED_GEMS + PRIVATE_SUPPORTED_GEMS].flatten.uniq end def gem_loading_error(flavor_name) unless PRIVATE_SUPPORTED_GEMS.include?(flavor_name) Metanorma::Cli::UI.error( "[metanorma] Error: flavor gem #{flavor_name} not present", ) end end end end # Activate flavors Metanorma::Flavor.activate
Version data entries
15 entries across 15 versions & 1 rubygems