Sha256: 5809b577ce665a6d84009ac30e23df3a0e82132cb555fc2be9b1f925de5487d7
Contents?: true
Size: 797 Bytes
Versions: 4
Compression:
Stored size: 797 Bytes
Contents
module Asynchronic module DataStore class LazyValue < TransparentProxy def initialize(data_store, key) @data_store_class = data_store.class @data_store_connection_args = data_store.connection_args @key = key end def reload @value = nil self end def inspect "#<#{proxy_class} @data_store_class=#{data_store_class} @data_store_connection_args=#{data_store_connection_args} @key=#{key}>" end def data_store data_store_class.connect(*data_store_connection_args) end def to_value __getobj__ end private attr_reader :data_store_class, :data_store_connection_args, :key def __getobj__ @value ||= data_store[key] end end end end
Version data entries
4 entries across 4 versions & 1 rubygems