toString method

  1. @override
String toString([
  1. List<AST>? extra
])
override

A string representation of this object.

Some classes have a default textual representation, often paired with a static parse function (like int.parse). These classes will provide the textual representation as their string representation.

Other classes have no meaningful textual representation that a program will care about. Such classes will typically override toString to provide useful information when inspecting the object, mainly for debugging or logging.

Implementation

@override
String toString([List<AST>? extra]) {
  final extraPtr = calloc<Z3_ast>(extra?.length ?? 0);
  try {
    for (var i = 0; i < (extra?.length ?? 0); i++) {
      extraPtr[i] = _c._createAST(extra![i]);
    }
    final result = _c._z3
        .fixedpoint_to_string(
          _fp,
          extra?.length ?? 0,
          extraPtr,
        )
        .cast<Utf8>()
        .toDartString();
    return result;
  } finally {
    malloc.free(extraPtr);
  }
}