class Steep::Interface::Block
def +(other)
def +(other) optional = self.optional? || other.optional? type = AST::Types::Proc.new(params: self.type.params | other.type.params, return_type: AST::Types::Union.build(types: [self.type.return_type, other.type.return_type])) self.class.new( type: type, optional: optional ) end