summaryrefslogtreecommitdiff
path: root/lib/hashie/extensions/indifferent_access.rb
diff options
context:
space:
mode:
authorgregory <greg2502@gmail.com>2014-06-19 07:33:56 -0400
committerdblock <dblock@dblock.org>2014-06-19 07:33:56 -0400
commit11445218ecaa3bd0a1cb05f8bc50f697f46e3f0b (patch)
tree5a63d836e4654add76dd2b9419bc2d9e5b29b6b2 /lib/hashie/extensions/indifferent_access.rb
parent4eaedf54bba117b39d43f00b536c0d496809815d (diff)
downloadhashie-11445218ecaa3bd0a1cb05f8bc50f697f46e3f0b.tar.gz
Auto include Dash::IndifferentAccess when Extensions::IndiferentAccess is included in Dash.
Diffstat (limited to 'lib/hashie/extensions/indifferent_access.rb')
-rw-r--r--lib/hashie/extensions/indifferent_access.rb4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/hashie/extensions/indifferent_access.rb b/lib/hashie/extensions/indifferent_access.rb
index 8af278e..4fc5bb7 100644
--- a/lib/hashie/extensions/indifferent_access.rb
+++ b/lib/hashie/extensions/indifferent_access.rb
@@ -24,6 +24,10 @@ module Hashie
#
module IndifferentAccess
def self.included(base)
+ Hashie::Extensions::Dash::IndifferentAccess::ClassMethods.tap do |extension|
+ base.extend(extension) if base <= Hashie::Dash && !base.singleton_class.included_modules.include?(extension)
+ end
+
base.class_eval do
alias_method :regular_writer, :[]=
alias_method :[]=, :indifferent_writer