ball_value library

Value type hierarchy for the Ball runtime.

When compiled to C++, maps to std::variant instead of std::any. Abstract (not sealed) so the engine library can add internal subtypes (FlowSignal, etc.) that participate in the same type system.

Classes

BallBool
A Ball boolean value.
BallDouble
A Ball double value.
BallFunction
A Ball function value (first-class callable).
BallInt
A Ball integer value.
BallList
A Ball list value (ordered collection).
BallMap
A Ball map value (string-keyed ordered map).
BallNull
A Ball null value.
BallString
A Ball string value.
BallValue
The root class for all Ball runtime values.

Functions

unwrap(BallValue val) Object?
Unwrap a BallValue back to a raw Dart Object?.
wrap(Object? raw) BallValue
Wrap a raw Dart Object? into the BallValue hierarchy.