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