Package com.hubspot.algebra
Class Result<SUCCESS_TYPE,ERROR_TYPE>
- java.lang.Object
-
- com.hubspot.algebra.Result<SUCCESS_TYPE,ERROR_TYPE>
-
- Direct Known Subclasses:
VoidResult
@Data(@Derive(withVisibility=Package)) public abstract class Result<SUCCESS_TYPE,ERROR_TYPE> extends Object
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidconsume(Consumer<? super ERROR_TYPE> errConsumer, Consumer<? super SUCCESS_TYPE> okConsumer)abstract booleanequals(Object obj)static <T,ERROR_TYPE>
Result<T,ERROR_TYPE>err(ERROR_TYPE error)SUCCESS_TYPEexpect(String message)ERROR_TYPEexpectErr(String message)<NEW_ERROR_TYPE>
Result<SUCCESS_TYPE,NEW_ERROR_TYPE>flatMapErr(Function<ERROR_TYPE,Result<SUCCESS_TYPE,NEW_ERROR_TYPE>> mapper)<NEW_SUCCESS_TYPE>
Result<NEW_SUCCESS_TYPE,ERROR_TYPE>flatMapOk(Function<SUCCESS_TYPE,Result<NEW_SUCCESS_TYPE,ERROR_TYPE>> mapper)abstract inthashCode()voidifErr(Consumer<? super ERROR_TYPE> consumer)voidifOk(Consumer<? super SUCCESS_TYPE> consumer)booleanisErr()booleanisOk()<NEW_ERROR_TYPE>
Result<SUCCESS_TYPE,NEW_ERROR_TYPE>mapErr(Function<ERROR_TYPE,NEW_ERROR_TYPE> mapper)<NEW_SUCCESS_TYPE>
Result<NEW_SUCCESS_TYPE,ERROR_TYPE>mapOk(Function<SUCCESS_TYPE,NEW_SUCCESS_TYPE> mapper)abstract <R> Rmatch(Function<ERROR_TYPE,R> err, Function<SUCCESS_TYPE,R> ok)static <SUCCESS_TYPE>
Result<SUCCESS_TYPE,NullValue>nullErr()static <ERROR_TYPE>
Result<NullValue,ERROR_TYPE>nullOk()static <SUCCESS_TYPE,E>
Result<SUCCESS_TYPE,E>ok(SUCCESS_TYPE success)StringtoString()ERROR_TYPEunwrapErrOrElseThrow()<X extends Throwable>
ERROR_TYPEunwrapErrOrElseThrow(Function<SUCCESS_TYPE,? extends X> exceptionMapper)<X extends Throwable>
ERROR_TYPEunwrapErrOrElseThrow(Supplier<? extends X> exceptionSupplier)SUCCESS_TYPEunwrapOrElseThrow()<X extends Throwable>
SUCCESS_TYPEunwrapOrElseThrow(Function<ERROR_TYPE,? extends X> exceptionMapper)<X extends Throwable>
SUCCESS_TYPEunwrapOrElseThrow(Supplier<? extends X> exceptionSupplier)
-
-
-
Method Detail
-
ok
public static <SUCCESS_TYPE,E> Result<SUCCESS_TYPE,E> ok(SUCCESS_TYPE success)
-
err
public static <T,ERROR_TYPE> Result<T,ERROR_TYPE> err(ERROR_TYPE error)
-
isOk
public boolean isOk()
-
ifOk
public void ifOk(Consumer<? super SUCCESS_TYPE> consumer)
-
isErr
public boolean isErr()
-
ifErr
public void ifErr(Consumer<? super ERROR_TYPE> consumer)
-
consume
public void consume(Consumer<? super ERROR_TYPE> errConsumer, Consumer<? super SUCCESS_TYPE> okConsumer)
-
mapErr
public <NEW_ERROR_TYPE> Result<SUCCESS_TYPE,NEW_ERROR_TYPE> mapErr(Function<ERROR_TYPE,NEW_ERROR_TYPE> mapper)
-
mapOk
public <NEW_SUCCESS_TYPE> Result<NEW_SUCCESS_TYPE,ERROR_TYPE> mapOk(Function<SUCCESS_TYPE,NEW_SUCCESS_TYPE> mapper)
-
flatMapOk
public <NEW_SUCCESS_TYPE> Result<NEW_SUCCESS_TYPE,ERROR_TYPE> flatMapOk(Function<SUCCESS_TYPE,Result<NEW_SUCCESS_TYPE,ERROR_TYPE>> mapper)
-
flatMapErr
public <NEW_ERROR_TYPE> Result<SUCCESS_TYPE,NEW_ERROR_TYPE> flatMapErr(Function<ERROR_TYPE,Result<SUCCESS_TYPE,NEW_ERROR_TYPE>> mapper)
-
unwrapOrElseThrow
public <X extends Throwable> SUCCESS_TYPE unwrapOrElseThrow(Supplier<? extends X> exceptionSupplier) throws X extends Throwable
- Throws:
X extends Throwable
-
unwrapOrElseThrow
public <X extends Throwable> SUCCESS_TYPE unwrapOrElseThrow(Function<ERROR_TYPE,? extends X> exceptionMapper) throws X extends Throwable
- Throws:
X extends Throwable
-
unwrapOrElseThrow
public SUCCESS_TYPE unwrapOrElseThrow()
-
expect
public SUCCESS_TYPE expect(String message)
-
unwrapErrOrElseThrow
public <X extends Throwable> ERROR_TYPE unwrapErrOrElseThrow(Supplier<? extends X> exceptionSupplier) throws X extends Throwable
- Throws:
X extends Throwable
-
unwrapErrOrElseThrow
public <X extends Throwable> ERROR_TYPE unwrapErrOrElseThrow(Function<SUCCESS_TYPE,? extends X> exceptionMapper) throws X extends Throwable
- Throws:
X extends Throwable
-
unwrapErrOrElseThrow
public ERROR_TYPE unwrapErrOrElseThrow()
-
expectErr
public ERROR_TYPE expectErr(String message)
-
match
public abstract <R> R match(Function<ERROR_TYPE,R> err, Function<SUCCESS_TYPE,R> ok)
-
-