module Hashie::Extensions::KeyConflictWarning
Public Instance Methods
Source
# File lib/hashie/extensions/key_conflict_warning.rb, line 17 def disable_warnings(*method_keys) raise CannotDisableMashWarnings if self == Hashie::Mash if method_keys.any? disabled_warnings.concat(method_keys).tap(&:flatten!).uniq! else disabled_warnings.clear end @disable_warnings = true end
Disable the logging of warnings based on keys conflicting keys/methods
@api semipublic @return [void]
Source
# File lib/hashie/extensions/key_conflict_warning.rb, line 32 def disable_warnings?(method_key = nil) return disabled_warnings.include?(method_key) if disabled_warnings.any? && method_key @disable_warnings ||= false end
Checks whether this class disables warnings for conflicting keys/methods
@api semipublic @return [Boolean]
Source
# File lib/hashie/extensions/key_conflict_warning.rb, line 41 def disabled_warnings @_disabled_warnings ||= [] end
Returns an array of methods that this class disables warnings for.
@api semipublic @return [Boolean]
Source
# File lib/hashie/extensions/key_conflict_warning.rb, line 49 def inherited(subclass) super subclass.disable_warnings(disabled_warnings) if disable_warnings? end
Inheritance hook that sets class configuration when inherited.
@api semipublic @return [void]
Calls superclass method