futurize method

void futurize(
  1. Future<T> body(), {
  2. T? initialData,
  3. String? errorMessage,
  4. bool useEmpty = true,
})

Implementation

void futurize(Future<T> Function() body,
    {T? initialData, String? errorMessage, bool useEmpty = true}) {
  final compute = body;
  _value ??= initialData;
  status = GetStatus<T>.loading();
  compute().then((newValue) {
    if ((newValue == null || newValue._isEmpty()) && useEmpty) {
      status = GetStatus<T>.empty();
    } else {
      status = GetStatus<T>.success(newValue);
    }

    refresh();
  }, onError: (err) {
    status = GetStatus.error(
        err is Exception ? err : Exception(errorMessage ?? err.toString()));
    refresh();
  });
}