Package org.spongepowered.api.data.value
Interface ListValue<E>
- All Superinterfaces:
CollectionValue<E,,List<E>> Iterable<E>,Value<List<E>>
- All Known Subinterfaces:
ListValue.Immutable<E>,ListValue.Mutable<E>
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interfaceA type ofCollectionValue.Immutablethat is backed by aList.static interfaceA type ofCollectionValue.Mutablethat is backed by aList.Nested classes/interfaces inherited from interface org.spongepowered.api.data.value.Value
Value.Factory -
Method Summary
Modifier and TypeMethodDescriptionRetrieves an immutable form of this value.Retrieves a mutable form of this value.get(int index) Gets the desired element at the desired index.static <E> ListValue.Immutable<E> immutableOf(Supplier<? extends Key<? extends ListValue<E>>> key, List<E> element) static <E> ListValue.Immutable<E> immutableOf(Key<? extends ListValue<E>> key, List<E> element) intQueries for the index of the provided element.key()Gets the key for thisValue.static <E> ListValue.Mutable<E> static <E> ListValue.Mutable<E> Methods inherited from interface org.spongepowered.api.data.value.CollectionValue
all, asMutableCopy, contains, containsAll, isEmpty, sizeMethods inherited from interface java.lang.Iterable
forEach, iterator, spliterator
-
Method Details
-
mutableOf
- Type Parameters:
E- The element type- Parameters:
key- The keyelement- The element- Returns:
- The constructed mutable value
-
mutableOf
static <E> ListValue.Mutable<E> mutableOf(Supplier<? extends Key<? extends ListValue<E>>> key, List<E> element) - Type Parameters:
E- The element type- Parameters:
key- The keyelement- The element- Returns:
- The constructed mutable value
-
immutableOf
- Type Parameters:
E- The element type- Parameters:
key- The keyelement- The element- Returns:
- The constructed immutable value
-
immutableOf
static <E> ListValue.Immutable<E> immutableOf(Supplier<? extends Key<? extends ListValue<E>>> key, List<E> element) - Type Parameters:
E- The element type- Parameters:
key- The keyelement- The element- Returns:
- The constructed immutable value
-
key
Description copied from interface:ValueGets the key for thisValue. -
get
Gets the desired element at the desired index.- Parameters:
index- The index of the element to return- Returns:
- The element at the desired index
- Throws:
IndexOutOfBoundsException- if the index is out of range
-
indexOf
Queries for the index of the provided element. If the element is not contained in this list, -1 is returned.- Parameters:
element- The element to get the index from- Returns:
- The index of the element, -1 if not available
-
asMutable
ListValue.Mutable<E> asMutable()Description copied from interface:ValueRetrieves a mutable form of this value. Due to the vague nature of the value itself, some cases can already provide aValue.Mutableinstance where this would simply return itself. In other cases, where the retrieved value is anValue.Immutableinstance, a new mutable value is created with the same key and values. -
asImmutable
ListValue.Immutable<E> asImmutable()Description copied from interface:ValueRetrieves an immutable form of this value. Due to the vague nature of the value itself, some cases can already provide aValue.Immutableinstance where this would simply return itself. In other cases, where the retrieved value is aValue.Mutableinstance, a new immutable value is created with the same key and values.- Specified by:
asImmutablein interfaceCollectionValue<E,List<E>> - Specified by:
asImmutablein interfaceValue<E>- Returns:
- An immutable value
-