module Querylet::Context
Public Instance Methods
add_item(key, value)
click to toggle source
# File lib/querylet/context.rb, line 7 def add_item(key, value) locals[key.to_sym] = value end
add_items(hash)
click to toggle source
# File lib/querylet/context.rb, line 11 def add_items(hash) hash.map { |k, v| add_item(k, v) } end
get(value)
click to toggle source
# File lib/querylet/context.rb, line 3 def get(value) @data.merge(locals)[value.to_sym] end
with_temporary_context(args = {}) { || ... }
click to toggle source
# File lib/querylet/context.rb, line 15 def with_temporary_context(args = {}) saved = args.keys.collect { |key| [key, get(key.to_s)] }.to_h add_items(args) block_result = yield locals.merge!(saved) block_result end
Private Instance Methods
locals()
click to toggle source
# File lib/querylet/context.rb, line 27 def locals @locals ||= {} end