class Rtype::Behavior::Xor

Public Class Methods

new(*types) click to toggle source
# File lib/rtype/behavior/xor.rb, line 4
def initialize(*types)
        @types = types
end

Public Instance Methods

error_message(value) click to toggle source
# File lib/rtype/behavior/xor.rb, line 15
def error_message(value)
        arr = @types.map { |e| Rtype::type_error_message(e, value) }
        arr.join "\nXOR "
end
valid?(value) click to toggle source
# File lib/rtype/behavior/xor.rb, line 8
def valid?(value)
        result = @types.map do |e|
                Rtype::valid? e, value
        end
        result.count(true) == 1
end