AsyncMapResult
비동기 작업 결과 래퍼 인터페이스. 성공/실패 결과를 타입 안전하게 처리.
인터페이스 정의
interface AsyncMapResult<T> : Serializable {
val value: T?
}구현체
AsyncSuccess
data class AsyncSuccess<T>(
override val value: T?,
) : AsyncMapResult<T>비동기 작업 성공 결과.
AsyncFail
data class AsyncFail<T>(
val throwable: Throwable
) : AsyncMapResult<T> {
override val value: T? = null
}비동기 작업 실패 결과. 예외 정보 포함.
필드
| 필드 | 타입 | 설명 |
|---|---|---|
value | T? | 결과 값 (실패 시 null) |
throwable | Throwable | 예외 (AsyncFail만) |
사용처
- 병렬 검색 결과 수집
- 부분 실패 허용 처리
- CoroutineUtils의 asyncMap 결과