Sha256: 4246538e1a2ef9694b56f43e6bf78be16fdedaef0de384848a910d9dbcd3c0c2
Contents?: true
Size: 931 Bytes
Versions: 4
Compression:
Stored size: 931 Bytes
Contents
# frozen_string_literal: true require 'eac_ruby_utils/core_ext' module Avm module Registry class ApplicationStereotypes require_sub __FILE__, require_dependency: true enable_simple_cache common_constructor :module_suffix private def available_uncached build_available end # @return [Avm::Instances::Base, nil] def class_detect(klass, detect_args) r = ::Avm::Instances::Base.by_id(*detect_args) r.application.stereotype.instance_class == klass ? r : nil end def detect(*registered_initialize_args) detect_optional(*registered_initialize_args) || raise_not_found(*registered_initialize_args) end def detect_optional(*registered_initialize_args) registered_modules.reverse.lazy .map { |klass| class_detect(klass, registered_initialize_args) }.find(&:present?) end end end end
Version data entries
4 entries across 4 versions & 2 rubygems