@mapbox/mapbox-gl-style-spec
Version:
a specification for mapbox gl styles
22 lines (19 loc) • 517 B
text/typescript
/**
* A type used for returning and propagating errors. The first element of the union
* represents success and contains a value, and the second represents an error and
* contains an error value.
* @private
*/
export type Result<T, E> = {
result: 'success';
value: T;
} | {
result: 'error';
value: E;
};
export function success<T, E>(value: T): Result<T, E> {
return {result: 'success', value};
}
export function error<T, E>(value: E): Result<T, E> {
return {result: 'error', value};
}