class NRSER::Types::Equivalent

Type satisfied only by anything `#==` it's {#value}.

Attributes

value[R]

Public Class Methods

new(value, **options) click to toggle source
Calls superclass method
# File lib/nrser/types/eqiuvalent.rb, line 32
def initialize value, **options
  super **options
  @value = value
end

Public Instance Methods

==(other) click to toggle source
# File lib/nrser/types/eqiuvalent.rb, line 48
def == other
  equal?(other) ||
  ( self.class == other.class &&
    @value == other.value )
end
default_symbolic() click to toggle source
# File lib/nrser/types/eqiuvalent.rb, line 55
def default_symbolic
  "{ x : #{ value.inspect }==x }"
end
explain() click to toggle source
# File lib/nrser/types/eqiuvalent.rb, line 38
def explain
  "Equivalent<#{ value.inspect }>"
end
test?(value) click to toggle source
# File lib/nrser/types/eqiuvalent.rb, line 43
def test? value
  @value.equal? value
end