Sha256: 3921e45e3ef30694407ed486692719d56b817300a8ba5153a90b2958923fe882
Contents?: true
Size: 704 Bytes
Versions: 10
Compression:
Stored size: 704 Bytes
Contents
require 'neo/rails/exposure/errors' module Neo module Rails module Exposure # Stores the concrete exposures per request class Exposures extend Forwardable def_delegator :@store, :[] def_delegator :@store, :key?, :exposed? def initialize(names) @names = names @store = Hash.new end def []=(key, value) raise UndeclaredVariableError unless @names.include?(key) @store[key] = value end def method_missing(method_name, *args) if exposed?(method_name) @store[method_name] else super end end end end end end
Version data entries
10 entries across 10 versions & 1 rubygems