calculateDirectorySize static method

int calculateDirectorySize(
  1. String path
)

Calculate directory size recursively.

Implementation

static int calculateDirectorySize(String path) {
  final lib = _lib();
  if (lib == null || _callbacksPtr == null) return 0;
  final fn = lib.lookupFunction<
      Int32 Function(
          Pointer<RacFileCallbacksStruct>, Pointer<Utf8>, Pointer<Int64>),
      int Function(Pointer<RacFileCallbacksStruct>, Pointer<Utf8>,
          Pointer<Int64>)>('rac_file_manager_calculate_dir_size');

  final pathPtr = path.toNativeUtf8();
  final sizePtr = calloc<Int64>();
  try {
    fn(_callbacksPtr!, pathPtr, sizePtr);
    return sizePtr.value;
  } finally {
    calloc.free(pathPtr);
    calloc.free(sizePtr);
  }
}