T
- Type held inside closed varpublic class MutableShort extends java.lang.Object implements java.util.function.Supplier<java.lang.Short>, java.util.function.Consumer<java.lang.Short>, Matchable.ValueAndOptionalMatcher<java.lang.Short>
short var = true;
Runnable r = () -> var =false;
Won't compile because var is treated as if it is final.
This can be 'worked around' by using a wrapping object or array.
e.g.
MutableShort var = MutableShort.of(true);
Runnable r = () -> var.set(false);
Modifier and Type | Class and Description |
---|---|
static interface |
MutableShort.ShortFunction |
Value.ValueImpl<T>
Convertable.SupplierToConvertable<T>
Constructor and Description |
---|
MutableShort() |
Modifier and Type | Method and Description |
---|---|
void |
accept(java.lang.Short t) |
static MutableShort |
fromExternal(java.util.function.Supplier<java.lang.Short> s,
java.util.function.Consumer<java.lang.Short> c)
Construct a MutableShort that gets and sets an external value using the provided Supplier and Consumer
e.g.
|
java.lang.Short |
get() |
short |
getAsShort() |
<T1> Mutable<T1> |
mapInputToObj(java.util.function.Function<T1,java.lang.Short> fn)
Use the supplied function to perform a lazy map operation when get is called
|
<R> Mutable<R> |
mapOutputToObj(java.util.function.Function<java.lang.Short,R> fn)
Use the supplied function to perform a lazy map operation when get is called
|
MutableShort |
mutate(MutableShort.ShortFunction varFn) |
static <T> MutableShort |
of(short var)
Create a Mutable variable, which can be mutated inside a Closure
e.g.
|
MutableShort |
set(short var) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
iterator, toOptional, visit
matches
collect, fold, fold, generate, iterate, mapReduce, mkString, newSubscriber, of, stream, subscribe, test, toDequeX, toEvalAlways, toEvalLater, toEvalNow, toFeatureToggle, toFutureStream, toFutureStream, toIor, toLazyImmutable, toList, toListX, toMaybe, toMutable, toPBagX, toPOrderedSetX, toPQueueX, toPSetX, toPStackX, toPVectorX, toQueueX, toSetX, toSimpleReact, toSimpleReact, toSortedSetX, toTry, toTry, toTry, toXor, toXor, unapply
endsWith, endsWithIterable, findAny, findFirst, firstValue, foldable, foldRight, foldRight, foldRight, foldRightMapToType, get, groupBy, join, join, join, mapReduce, print, print, printErr, printOut, reduce, reduce, reduce, reduce, reduce, reduce, reduce, schedule, scheduleFixedDelay, scheduleFixedRate, single, single, singleOptional, startsWith, startsWithIterable, toConcurrentLazyCollection, toConcurrentLazyStreamable, toLazyCollection, validate, xMatch
collect, fromSupplier, isPresent, orElse, orElseGet, orElseThrow, toAtomicReference, toCompletableFuture, toCompletableFutureAsync, toCompletableFutureAsync, toFutureW, toFutureWAsync, toFutureWAsync, toOptionalAtomicReference, toStream
public static <T> MutableShort of(short var)
MutableShort num = MutableShort.of(true);
num.mutate(n->!n))
System.out.println(num.getAsShort());
//prints false
var
- Initial value of Mutablepublic static MutableShort fromExternal(java.util.function.Supplier<java.lang.Short> s, java.util.function.Consumer<java.lang.Short> c)
MutableShort mutable = MutableShort.fromExternal(()->!this.value,val->!this.value);
s
- Supplier of an external valuec
- Consumer that sets an external valuepublic <R> Mutable<R> mapOutputToObj(java.util.function.Function<java.lang.Short,R> fn)
MutableShort mutable = MutableShort.fromExternal(()->!this.value,val->!this.value);
Mutable<Short> withOverride = mutable.mapOutputToObj(b->{
if(override)
return 3s;
return b;
});
fn
- Map function to be applied to the result when get is calledpublic <T1> Mutable<T1> mapInputToObj(java.util.function.Function<T1,java.lang.Short> fn)
MutableShort mutable = MutableShort.fromExternal(()->!this.value,val->!this.value);
Mutable<Short> withOverride = mutable.mapInputToObj(b->{
if(override)
return 1s;
return b;
});
fn
- Map function to be applied to the input when set is calledpublic short getAsShort()
public MutableShort set(short var)
var
- New valuepublic MutableShort mutate(MutableShort.ShortFunction varFn)
varFn
- New valuepublic java.lang.Short get()
get
in interface Convertable<java.lang.Short>
get
in interface java.util.function.Supplier<java.lang.Short>
public void accept(java.lang.Short t)
accept
in interface java.util.function.Consumer<java.lang.Short>