abstract struct Savi::Compiler::XTypes::AlgebraicType
- Savi::Compiler::XTypes::AlgebraicType
- Struct
- Value
- Object
Direct Known Subclasses
- Savi::Compiler::XTypes::AlgebraicTypeSummand
- Savi::Compiler::XTypes::JumpsAway
- Savi::Compiler::XTypes::Union
Defined in:
savi/compiler/xtypes/algebraic_type.crConstructors
Instance Method Summary
- #aliased
- #bind_variables(mapping : Hash(TypeVariable, AlgebraicType)) : Tuple(AlgebraicType, Bool)
- #initialize
-
#inspect
Returns an unambiguous and information-rich string representation of this object, typically intended for developers.
- #intersect(other : AlgebraicType)
- #is_assignment_based_on_input_var? : Bool
- #observe_assignment_reciprocals(pos : Source::Pos, supertype : AlgebraicType, maybe : Bool = false)
- #override_cap(cap : AlgebraicType)
- #show
- #stabilized
- #trace_as_assignment(cursor : Cursor)
- #trace_as_constraint(cursor : Cursor)
- #trace_call_return_as_assignment(cursor : Cursor, call : AST::Call)
- #viewed_from(origin)
Constructor Detail
Instance Method Detail
def inspect
#
Description copied from class Object
Returns an unambiguous and information-rich string representation of this object, typically intended for developers.
This method should usually not be overridden. It delegates to
#inspect(IO)
which can be overridden for custom implementations.
Also see #to_s
.
def observe_assignment_reciprocals(pos : Source::Pos, supertype : AlgebraicType, maybe : Bool = false)
#