when<R> method

R when<R>({
  1. required R success(
    1. T data
    ),
  2. required R failure(
    1. NyResponse<T> response
    ),
})

Execute different callbacks based on success/failure.

Example:

final result = response.when(
  success: (data) => 'Got ${data.length} items',
  failure: (response) => 'Error: ${response.statusMessage}',
);

Implementation

R when<R>({
  required R Function(T data) success,
  required R Function(NyResponse<T> response) failure,
}) {
  if (isSuccessful && data != null) {
    return success(data!);
  }
  return failure(this);
}