callExperimentalAPI method

Future<V2TimValueCallback<Object>> callExperimentalAPI({
  1. required String api,
  2. Object? param,
})

Implementation

Future<V2TimValueCallback<Object>> callExperimentalAPI({
  required String api,
  Object? param,
}) async {
  String userData = Tools.generateUserData('callExperimentalAPI');
  Completer<V2TimValueCallback<Object>> completer = Completer();
  NativeLibraryManager.timValueCallback2Future<Object>(userData, completer);

  Map<String, dynamic> cJsonParam = {};
  if (param is Map<String, dynamic>) {
    cJsonParam = Map<String, dynamic>.from(param);
  }
  cJsonParam['request_internal_operation'] = api;
  Pointer<Char> pCJsonParam = Tools.string2PointerChar(json.encode(cJsonParam));
  Pointer<Void> pUserData = Tools.string2PointerVoid(userData);

  NativeLibraryManager.bindings.DartCallExperimentalAPI(pCJsonParam, pUserData);

  return completer.future;
}