Sha256: 6b6882e97b2e8b9d981a134a122da2f2652082c391dd7c718fc323140acacb79

Contents?: true

Size: 452 Bytes

Versions: 1

Compression:

Stored size: 452 Bytes

Contents

require 'dry/types/struct'

module Dry
  module Types
    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

1 entries across 1 versions & 1 rubygems

Version Path
dry-types-0.6.0 lib/dry/types/value.rb