Package net.minecraftforge.fml
Class OptionalMod<T>
- java.lang.Object
-
- net.minecraftforge.fml.OptionalMod<T>
-
public final class OptionalMod<T> extends java.lang.Object
-
-
Constructor Summary
Constructors Modifier Constructor Description private
OptionalMod(boolean searched)
private
OptionalMod(java.lang.String modId)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static <T> OptionalMod<T>
empty()
boolean
equals(java.lang.Object obj)
OptionalMod<T>
filter(java.util.function.Predicate<? super T> predicate)
If a mod object is present, and the mod object matches the given predicate, return anOptionalMod
describing the value, otherwise return an emptyOptionalMod
.<U> java.util.Optional<U>
flatMap(java.util.function.Function<? super T,java.util.Optional<U>> mapper)
If a value is present, apply the providedOptional
-bearing mapping function to it, return that result, otherwise return an emptyOptional
.T
get()
If a mod is present in thisOptionalMod
, returns the value, otherwise throwsNoSuchElementException
.java.lang.String
getModId()
private T
getValue()
int
hashCode()
void
ifPresent(java.util.function.Consumer<? super T> consumer)
If a mod object is present, invoke the specified consumer with the object, otherwise do nothing.boolean
isPresent()
Returntrue
if there is a mod object present, otherwisefalse
.<U> java.util.Optional<U>
map(java.util.function.Function<? super T,? extends U> mapper)
If a mod object is present, apply the provided mapping function to it, and if the result is non-null, return anOptional
describing the result.static <M> OptionalMod<M>
of(java.lang.String modId)
T
orElse(T other)
Return the mod object if present, otherwise returnother
.T
orElseGet(java.util.function.Supplier<? extends T> other)
Return the mod object if present, otherwise invokeother
and return the result of that invocation.<X extends java.lang.Throwable>
TorElseThrow(java.util.function.Supplier<? extends X> exceptionSupplier)
Return the contained mod object, if present, otherwise throw an exception to be created by the provided supplier.
-
-
-
Field Detail
-
modId
private final java.lang.String modId
-
value
private T value
-
searched
private boolean searched
-
EMPTY
private static OptionalMod<?> EMPTY
-
-
Method Detail
-
of
public static <M> OptionalMod<M> of(java.lang.String modId)
-
empty
private static <T> OptionalMod<T> empty()
-
getValue
private T getValue()
-
get
public T get()
If a mod is present in thisOptionalMod
, returns the value, otherwise throwsNoSuchElementException
.- Returns:
- the modobject held by this
OptionalMod
- Throws:
java.util.NoSuchElementException
- if there is no modobject present- See Also:
Optional.isPresent()
-
getModId
public java.lang.String getModId()
-
isPresent
public boolean isPresent()
Returntrue
if there is a mod object present, otherwisefalse
.- Returns:
true
if there is a mod object present, otherwisefalse
-
ifPresent
public void ifPresent(java.util.function.Consumer<? super T> consumer)
If a mod object is present, invoke the specified consumer with the object, otherwise do nothing.- Parameters:
consumer
- block to be executed if a mod object is present- Throws:
java.lang.NullPointerException
- if mod object is present andconsumer
is null
-
filter
public OptionalMod<T> filter(java.util.function.Predicate<? super T> predicate)
If a mod object is present, and the mod object matches the given predicate, return anOptionalMod
describing the value, otherwise return an emptyOptionalMod
.- Parameters:
predicate
- a predicate to apply to the mod object, if present- Returns:
- an
OptionalMod
describing the value of thisOptionalMod
if a mod object is present and the mod object matches the given predicate, otherwise an emptyOptionalMod
- Throws:
java.lang.NullPointerException
- if the predicate is null
-
map
public <U> java.util.Optional<U> map(java.util.function.Function<? super T,? extends U> mapper)
If a mod object is present, apply the provided mapping function to it, and if the result is non-null, return anOptional
describing the result. Otherwise return an emptyOptional
.- Type Parameters:
U
- The type of the result of the mapping function- Parameters:
mapper
- a mapping function to apply to the mod object, if present- Returns:
- an
Optional
describing the result of applying a mapping function to the mod object of thisOptionalMod
, if a mod object is present, otherwise an emptyOptional
- Throws:
java.lang.NullPointerException
- if the mapping function is null
-
flatMap
public <U> java.util.Optional<U> flatMap(java.util.function.Function<? super T,java.util.Optional<U>> mapper)
If a value is present, apply the providedOptional
-bearing mapping function to it, return that result, otherwise return an emptyOptional
. This method is similar tomap(Function)
, but the provided mapper is one whose result is already anOptional
, and if invoked,flatMap
does not wrap it with an additionalOptional
.- Type Parameters:
U
- The type parameter to theOptional
returned by- Parameters:
mapper
- a mapping function to apply to the mod object, if present the mapping function- Returns:
- the result of applying an
Optional
-bearing mapping function to the value of thisOptional
, if a value is present, otherwise an emptyOptional
- Throws:
java.lang.NullPointerException
- if the mapping function is null or returns a null result
-
orElse
public T orElse(T other)
Return the mod object if present, otherwise returnother
.- Parameters:
other
- the mod object to be returned if there is no mod object present, may be null- Returns:
- the mod object, if present, otherwise
other
-
orElseGet
public T orElseGet(java.util.function.Supplier<? extends T> other)
Return the mod object if present, otherwise invokeother
and return the result of that invocation.- Parameters:
other
- aSupplier
whose result is returned if no mod object is present- Returns:
- the mod object if present otherwise the result of
other.get()
- Throws:
java.lang.NullPointerException
- if mod object is not present andother
is null
-
orElseThrow
public <X extends java.lang.Throwable> T orElseThrow(java.util.function.Supplier<? extends X> exceptionSupplier) throws X extends java.lang.Throwable
Return the contained mod object, if present, otherwise throw an exception to be created by the provided supplier.- Type Parameters:
X
- Type of the exception to be thrown- Parameters:
exceptionSupplier
- The supplier which will return the exception to be thrown- Returns:
- the present mod object
- Throws:
X
- if there is no mod object presentjava.lang.NullPointerException
- if no mod object is present andexceptionSupplier
is nullX extends java.lang.Throwable
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
-