class Medicine::Injections

@api private

Public Class Methods

new() click to toggle source
# File lib/medicine/injections.rb, line 6
def initialize
  @injections = {}
end

Public Instance Methods

[](name) click to toggle source
# File lib/medicine/injections.rb, line 16
def [](name)
  @injections[name]
end
empty?() click to toggle source
# File lib/medicine/injections.rb, line 29
def empty?
  @injections.empty?
end
fetch(name, &block) click to toggle source
# File lib/medicine/injections.rb, line 10
def fetch(name, &block)
  @injections.fetch(name, &block)
rescue KeyError
  raise ArgumentError, "No dependency with name #{name} has been injected."
end
include?(name) click to toggle source
# File lib/medicine/injections.rb, line 25
def include?(name)
  @injections.has_key?(name)
end
set(name, dependency) click to toggle source
# File lib/medicine/injections.rb, line 20
def set(name, dependency)
  warn "#{name} has already been injected" if include?(name)
  @injections[name] = dependency
end