Sha256: c5e8dc3ed390d733f187c18623ae4416fac2f5c68a235bd14fa4b705354ddbb9

Contents?: true

Size: 420 Bytes

Versions: 2

Compression:

Stored size: 420 Bytes

Contents

module ServiceContract
  AbstractType = Struct.new(:definition) do
    def name
      raise :not_implemented
    end

    def subtype
      nil
    end

    def fields
      []
    end

    def valid_value?(value)
      if valid_values.empty?
        true
      else
        valid_values.include?(value)
      end
    end

    def valid_values
      []
    end

    def valid_ruby_types
      [Object]
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
service_contract-0.4.1 lib/service_contract/abstract_type.rb
service_contract-0.4.0 lib/service_contract/abstract_type.rb