Sha256: b3a8b4b5d765786567699dec153a6c1f4f3d031132d9c6a1e0e573979d154922

Contents?: true

Size: 423 Bytes

Versions: 4

Compression:

Stored size: 423 Bytes

Contents

module Dry
  module Data
    class Value < Struct
      def self.inherited(klass)
        super
        klass.instance_variable_set('@equalizer', Equalizer.new)
        klass.send(:include, klass.equalizer)
      end

      def self.attributes(*args)
        super
        equalizer.instance_variable_get('@keys').concat(schema.keys).uniq!
      end

      def self.equalizer
        @equalizer
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
dry-data-0.4.2 lib/dry/data/value.rb
dry-data-0.4.1 lib/dry/data/value.rb
dry-data-0.4.0 lib/dry/data/value.rb
dry-data-0.3.2 lib/dry/data/value.rb