Sha256: 156d764298e38e820f42e50e5a588089ae65d88499d3372918428b06182db739
Contents?: true
Size: 1.07 KB
Versions: 1
Compression:
Stored size: 1.07 KB
Contents
# frozen_string_literal: true module ConvenientService module Support module DependencyContainer module Import include Support::Concern class_methods do ## # @param full_name [String, Symbol] # @param from [Module] # @param scope [:instance, :class] # @param prepend [Boolean] # @return [ConvenientService::Support::DependencyContainer::Entities::Method] # def import(full_name, from:, scope: Constants::DEFAULT_SCOPE, prepend: Constants::DEFAULT_PREPEND) raise Errors::NotExportableModule.new(mod: from) unless Utils::Module.include_module?(from, DependencyContainer::Export) method = from.exported_methods.find_by(full_name: full_name, scope: scope) raise Errors::NotExportedMethod.new(method_name: full_name, method_scope: scope, mod: from) unless method Commands::ImportMethod.call(importing_module: self, exporting_module: from, method: method, scope: scope, prepend: prepend) end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
convenient_service-0.5.0 | lib/convenient_service/support/dependency_container/import.rb |