class Contracts::Builtin::DescendantOf
Use this for specifying contracts for class arguments Example: DescendantOf[ e: Range, f: Optional[Num] ]
Attributes
Public Class Methods
Source
# File lib/contracts/builtin_contracts.rb, line 474 def initialize(parent_class) super() @parent_class = parent_class end
Calls superclass method
Public Instance Methods
Source
# File lib/contracts/builtin_contracts.rb, line 483 def to_s "DescendantOf[#{parent_class}]" end
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