void floatCompleter(Completer<double> completer, VoidPtr p) { final value = p.cast<ffi.Float>().value; calloc.free(p); completer.complete(value); }