Files
2026-06-17 12:57:28 +03:30

16 lines
528 B
Dart

/// نتیجه‌ی یک عملیات داده‌ای: موفق (داده) یا خطا (پیام).
/// لایه‌ی data همیشه DataState برمی‌گرداند تا لایه‌های بالا throw نگیرند.
abstract class DataState<T> {
final T? data;
final String? error;
const DataState(this.data, this.error);
}
class DataSuccess<T> extends DataState<T> {
const DataSuccess(T data) : super(data, null);
}
class DataError<T> extends DataState<T> {
const DataError(String error) : super(null, error);
}