Sha256: e97c25edf583c904d9601d19ff6c470f3f9c911ac3d1ed411f8a68e308e31138
Contents?: true
Size: 689 Bytes
Versions: 1
Compression:
Stored size: 689 Bytes
Contents
module Seabright module DefaultValues module ClassMethods def default_vals @default_vals ||= {} end def intercept_for_defaults! return if @intercepted_for_defaults self.class_eval do filter_gets do |obj, k, v| if !obj.is_set?(k) && (d = obj.class.default_vals[k.to_sym]) && !d.nil? d else v end end end @intercepted_for_defaults = true end def register_default(k,vl) default_vals[k.to_sym] = vl intercept_for_defaults! end def default_for(k,vl) register_default k, vl end end def self.included(base) base.extend(ClassMethods) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
redis_object-1.5.3 | lib/redis_object/defaults.rb |