Sha256: 016005689fbf6018af19c8c4f5128be4b8b634d1dc5609935da91e334dbbf19a
Contents?: true
Size: 771 Bytes
Versions: 1
Compression:
Stored size: 771 Bytes
Contents
# frozen_string_literal: true module Dry module AutoInject class Builder # @api private attr_reader :container # @api private attr_reader :strategies # This clashes with the hash strategy undef hash def initialize(container, options = {}) @container = container @strategies = options.fetch(:strategies) { Strategies } end # @api public def [](*dependency_names) = default[*dependency_names] def respond_to_missing?(name, _ = false) = strategies.key?(name) private def method_missing(name, ...) if strategies.key?(name) Injector.new(container, strategies[name], builder: self) else super end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
dry-auto_inject-1.1.0 | lib/dry/auto_inject/builder.rb |