Sha256: 643c092c3840dd32c9808df812a81cc5be36daeaee74837c49c6e4d95deb6689
Contents?: true
Size: 773 Bytes
Versions: 5
Compression:
Stored size: 773 Bytes
Contents
class Bora class ParameterResolverLoader ResolverNotFound = Class.new(StandardError) def load_resolver(name) resolver_class = name.split('_').reject(&:empty?).map(&:capitalize).join class_name = "Bora::Resolver::#{resolver_class}" begin resolver_class = Kernel.const_get(class_name) rescue NameError require_resolver_file(name) resolver_class = Kernel.const_get(class_name) end resolver_class end private def require_resolver_file(name) require_path = "bora/resolver/#{name}" begin require require_path rescue LoadError raise ResolverNotFound, "Could not find resolver for '#{name}'. Expected to find it at '#{require_path}'" end end end end
Version data entries
5 entries across 5 versions & 1 rubygems