class Steep::Interface::IvarChain
def ==(other)
def ==(other) other.is_a?(IvarChain) && type == type && parent == parent end
def initialize(type:, parent: nil)
def initialize(type:, parent: nil) @type = type @parent = parent end
def subst(s)
def subst(s) self.class.new( type: type.subst(s), parent: parent&.subst(s) ) end