Result
Result:
object
Defined in: packages/core/src/result.ts:47
Result utility functions for chaining and transformation
Type Declaration
섹션 제목: “Type Declaration”expect()
섹션 제목: “expect()”expect<
T,E>(result,message):T
Return the value on success, or throw with a custom message on failure. Use this when you want to convert a failed Result to an exception.
Type Parameters
섹션 제목: “Type Parameters”T
E
Parameters
섹션 제목: “Parameters”result
섹션 제목: “result”Result<T, E>
The Result to expect
message
섹션 제목: “message”string
Custom error message to use if result is fail
Returns
섹션 제목: “Returns”T
The success value
Throws
섹션 제목: “Throws”Error with the provided message (and original error as cause)
Example
섹션 제목: “Example”const value = Result.expect(result, 'Message send failed');// throws Error('Message send failed') if result is failflatMap()
섹션 제목: “flatMap()”flatMap<
T,U,E>(result,fn):Result<U,E>
Chain Result-returning operations
Type Parameters
섹션 제목: “Type Parameters”T
U
E
Parameters
섹션 제목: “Parameters”result
섹션 제목: “result”Result<T, E>
(value) => Result<U, E>
Returns
섹션 제목: “Returns”Result<U, E>
fromPromise()
섹션 제목: “fromPromise()”fromPromise<
T,E>(promise):Promise<Result<T,E>>
Convert a Promise to a Result
Type Parameters
섹션 제목: “Type Parameters”T
E = Error
Parameters
섹션 제목: “Parameters”promise
섹션 제목: “promise”Promise<T>
Returns
섹션 제목: “Returns”Promise<Result<T, E>>
isFail()
섹션 제목: “isFail()”isFail<
T,E>(result):result is Fail<E>
Check if a Result is Fail
Type Parameters
섹션 제목: “Type Parameters”T
E
Parameters
섹션 제목: “Parameters”result
섹션 제목: “result”Result<T, E>
Returns
섹션 제목: “Returns”result is Fail<E>
isOk()
섹션 제목: “isOk()”isOk<
T,E>(result):result is Ok<T>
Check if a Result is Ok
Type Parameters
섹션 제목: “Type Parameters”T
E
Parameters
섹션 제목: “Parameters”result
섹션 제목: “result”Result<T, E>
Returns
섹션 제목: “Returns”result is Ok<T>
map()
섹션 제목: “map()”map<
T,U,E>(result,fn):Result<U,E>
Transform the success value of a Result
Type Parameters
섹션 제목: “Type Parameters”T
U
E
Parameters
섹션 제목: “Parameters”result
섹션 제목: “result”Result<T, E>
(value) => U
Returns
섹션 제목: “Returns”Result<U, E>
mapError()
섹션 제목: “mapError()”mapError<
T,E,F>(result,fn):Result<T,F>
Transform the error of a Result
Type Parameters
섹션 제목: “Type Parameters”T
E
F
Parameters
섹션 제목: “Parameters”result
섹션 제목: “result”Result<T, E>
(error) => F
Returns
섹션 제목: “Returns”Result<T, F>
match()
섹션 제목: “match()”match<
T,E,U>(result,handlers):U
Pattern match on a Result
Type Parameters
섹션 제목: “Type Parameters”T
E
U
Parameters
섹션 제목: “Parameters”result
섹션 제목: “result”Result<T, E>
handlers
섹션 제목: “handlers”fail
섹션 제목: “fail”(error) => U
(value) => U
Returns
섹션 제목: “Returns”U
tap()
섹션 제목: “tap()”tap<
T,E>(result,fn):Result<T,E>
Execute a side-effect without breaking the chain. Calls fn with the result (ok or fail) and returns the same result.
Type Parameters
섹션 제목: “Type Parameters”T
E
Parameters
섹션 제목: “Parameters”result
섹션 제목: “result”Result<T, E>
The Result to tap
(result) => void
Side-effect function called with the result
Returns
섹션 제목: “Returns”Result<T, E>
The same Result for chaining
Example
섹션 제목: “Example”const result = await provider.send(options);Result.tap(result, r => console.log('Completed:', r));tapErr()
섹션 제목: “tapErr()”tapErr<
T,E>(result,fn):Result<T,E>
Execute a side-effect on failure only. Calls fn with the error only if result is fail, returns the same result.
Type Parameters
섹션 제목: “Type Parameters”T
E
Parameters
섹션 제목: “Parameters”result
섹션 제목: “result”Result<T, E>
The Result to tap
(error) => void
Side-effect function called with the error on failure
Returns
섹션 제목: “Returns”Result<T, E>
The same Result for chaining
Example
섹션 제목: “Example”Result.tapErr(result, error => console.error('Failed:', error.message));tapOk()
섹션 제목: “tapOk()”tapOk<
T,E>(result,fn):Result<T,E>
Execute a side-effect on success only. Calls fn with the value only if result is ok, returns the same result.
Type Parameters
섹션 제목: “Type Parameters”T
E
Parameters
섹션 제목: “Parameters”result
섹션 제목: “result”Result<T, E>
The Result to tap
(value) => void
Side-effect function called with the value on success
Returns
섹션 제목: “Returns”Result<T, E>
The same Result for chaining
Example
섹션 제목: “Example”Result.tapOk(result, value => console.log('Success:', value.messageId));unwrap()
섹션 제목: “unwrap()”unwrap<
T,E>(result):T
Extract the value or throw the error
Type Parameters
섹션 제목: “Type Parameters”T
E
Parameters
섹션 제목: “Parameters”result
섹션 제목: “result”Result<T, E>
Returns
섹션 제목: “Returns”T
unwrapOr()
섹션 제목: “unwrapOr()”unwrapOr<
T,E>(result,defaultValue):T
Extract the value or return a default
Type Parameters
섹션 제목: “Type Parameters”T
E
Parameters
섹션 제목: “Parameters”result
섹션 제목: “result”Result<T, E>
defaultValue
섹션 제목: “defaultValue”T
Returns
섹션 제목: “Returns”T
unwrapOrElse()
섹션 제목: “unwrapOrElse()”unwrapOrElse<
T,E>(result,fn):T
Extract the value or compute a default from the error
Type Parameters
섹션 제목: “Type Parameters”T
E
Parameters
섹션 제목: “Parameters”result
섹션 제목: “result”Result<T, E>
(error) => T
Returns
섹션 제목: “Returns”T