class Contracts::Builtin::DescendantOf
Use this for specifying contracts for class arguments Example: DescendantOf[ e: Range, f: Optional[Num] ]
Attributes
parent_class[R]
Public Class Methods
new(parent_class)
click to toggle source
Calls superclass method
# File lib/contracts/builtin_contracts.rb, line 474 def initialize(parent_class) super() @parent_class = parent_class end
Public Instance Methods
inspect()
click to toggle source
# File lib/contracts/builtin_contracts.rb, line 487 def inspect to_s end
to_s()
click to toggle source
# File lib/contracts/builtin_contracts.rb, line 483 def to_s "DescendantOf[#{parent_class}]" end
valid?(given_class)
click to toggle source
# File lib/contracts/builtin_contracts.rb, line 479 def valid?(given_class) given_class.is_a?(Class) && given_class.ancestors.include?(parent_class) end