class Contracts::Builtin::Exactly
Takes a class A
. If argument is object of type A
, the contract passes. If it is a subclass of A (or not related to A in any way), it fails. Example: Exactly[Numeric]
Public Class Methods
new(cls)
click to toggle source
Calls superclass method
# File lib/contracts/builtin_contracts.rb, line 219 def initialize(cls) super() @cls = cls end
Public Instance Methods
to_s()
click to toggle source
# File lib/contracts/builtin_contracts.rb, line 228 def to_s "exactly #{@cls.inspect}" end
valid?(val)
click to toggle source
# File lib/contracts/builtin_contracts.rb, line 224 def valid?(val) val.instance_of?(@cls) end