Sha256: 8a6ddb3643a38c3f741e607a3f9a6dc4f9f7062c91a9c90061480e5b96c8216d
Contents?: true
Size: 685 Bytes
Versions: 37
Compression:
Stored size: 685 Bytes
Contents
require 'set' module Aws # @api private class EagerLoader def initialize @loaded = Set.new end # @return [Set<Module>] attr_reader :loaded # @param [Module] klass_or_module # @return [self] def load(klass_or_module) @loaded << klass_or_module klass_or_module.constants.each do |const_name| next if const_name == :Tms path = klass_or_module.autoload?(const_name) begin require(path) if path const = klass_or_module.const_get(const_name) self.load(const) if Module === const && !@loaded.include?(const) rescue LoadError end end self end end end
Version data entries
37 entries across 37 versions & 1 rubygems