Sha256: a2610ce5a9d58f6d4bdb308801582241c0629fa298d078d0aa3968c9c5126fa7
Contents?: true
Size: 497 Bytes
Versions: 13
Compression:
Stored size: 497 Bytes
Contents
module Rasti class App class Container def initialize @registry = {} @cache = {} yield self if block_given? end def register(key, &block) registry[key] = block end def resolve(key) cache[key] ||= registry.fetch(key).call end alias_method :[], :resolve def resolve_all registry.each_key { |k| resolve k } end private attr_reader :registry, :cache end end end
Version data entries
13 entries across 13 versions & 1 rubygems