LangType class abstract
Abstract base class for all language types in Balbismo.
This class serves as the foundation for the type system, providing common functionality for type representation and LLVM IR generation. All concrete types in Balbismo (primitive types, arrays, etc.) inherit from this class.
The class uses Equatable for proper equality comparison based on the underlying primitive type, ensuring type compatibility checks work correctly.
- Inheritance
- Implementers
Constructors
- LangType.new(PrimitiveTypes primitiveType)
-
Constructs a language type with the specified primitive type.
const
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- irType → String
-
Returns the LLVM IR type representation for this language type.
no setter
- primitiveType → PrimitiveTypes
-
The underlying primitive type that forms the basis of this language type.
final
-
props
→ List<
Object> -
Equatable implementation for proper type comparison.
no setteroverride
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- stringify → bool?
-
If set to
true
, the toString method will be overridden to output this instance's props.no setterinherited
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
Returns the LLVM IR type string representation of this language type.
override
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited