class Dependor::DependencyNamesCache

Public Class Methods

new() click to toggle source
# File lib/dependor/dependency_names_cache.rb, line 3
def initialize
  @constructor_params = {}
end

Public Instance Methods

for_class(klass) click to toggle source
# File lib/dependor/dependency_names_cache.rb, line 7
def for_class(klass)
  @constructor_params[klass] ||= get_constructor_params(klass)
end

Private Instance Methods

get_constructor_params(klass) click to toggle source
# File lib/dependor/dependency_names_cache.rb, line 13
def get_constructor_params(klass)
  params = klass.instance_method(:initialize).parameters
  params.select{|type, name| type == :req}.map{|type, name| name}
end