Sha256: ca7137884b8a6fdfa892e296c363f0b7416d2062a05f2e41897abcc33189beea
Contents?: true
Size: 882 Bytes
Versions: 26
Compression:
Stored size: 882 Bytes
Contents
# frozen_string_literal: true require 'spree/core/class_constantizer' module Spree module Core module EnvironmentExtension extend ActiveSupport::Concern class_methods do def add_class_set(name) define_method(name) do set = instance_variable_get("@#{name}") set ||= send("#{name}=", []) set end define_method("#{name}=") do |klasses| set = ClassConstantizer::Set.new set.concat(klasses) instance_variable_set("@#{name}", set) end end end def add_class(name) Spree::Deprecation.warn( 'This method is deprecated. ' \ "Please use `#{self.class}.add_class_set(#{name.inspect})` instead.", caller, ) singleton_class.send(:add_class_set, name) end end end end
Version data entries
26 entries across 26 versions & 1 rubygems