Sha256: 771b4d1c2c691ced2793c2a6e9dc536b337889ed828e3c48c22f2afd21babb67
Contents?: true
Size: 803 Bytes
Versions: 5
Compression:
Stored size: 803 Bytes
Contents
module Spree module Preferences class RuntimeConfiguration def initialize self.class.defaults.each do |key, value| self[key] = value end end def configure yield(self) if block_given? end def get(preference) send(preference) end alias [] get def set(preference, value) send("#{preference}=", value) end alias []= set class << self def preference(name, _type, default: nil, deprecated: false) defaults[name] = default deprecations[name] = deprecated attr_accessor name end def defaults @defaults ||= {} end def deprecations @deprecations ||= {} end end end end end
Version data entries
5 entries across 5 versions & 1 rubygems