Sha256: 69a25fee8d000c6a82b1d13072be3ce59d8d05b313a1a7754ebda7c0773ea59e

Contents?: true

Size: 535 Bytes

Versions: 1

Compression:

Stored size: 535 Bytes

Contents

# encoding: utf-8

module Axiom

  # Define equality, equivalence and inspection methods
  class Equalizer < ::Equalizer

    # Include the #eql? and #== methods
    #
    # @return [undefined]
    #
    # @api private
    #
    # TODO: this monkey-patches equalizer and should be removed
    def initialize(*keys)
      @keys = keys
      define_methods
      include_comparison_methods

      module_eval do
        include Adamantium
        memoize :hash
      end

      freeze
    end

  end # class Equalizer
end # module Axiom

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
axiom-0.1.1 lib/axiom/support/equalizer.rb