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
Modifier and TypeInterfaceDescriptionstatic interface
A type ofCollectionValue.Immutable
that is backed by aList
.static interface
A type ofCollectionValue.Mutable
that 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) int
Queries 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, size
Methods 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:Value
Gets 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:Value
Retrieves a mutable form of this value. Due to the vague nature of the value itself, some cases can already provide aValue.Mutable
instance where this would simply return itself. In other cases, where the retrieved value is anValue.Immutable
instance, a new mutable value is created with the same key and values. -
asImmutable
ListValue.Immutable<E> asImmutable()Description copied from interface:Value
Retrieves an immutable form of this value. Due to the vague nature of the value itself, some cases can already provide aValue.Immutable
instance where this would simply return itself. In other cases, where the retrieved value is aValue.Mutable
instance, a new immutable value is created with the same key and values.- Specified by:
asImmutable
in interfaceCollectionValue<E,
List<E>> - Specified by:
asImmutable
in interfaceValue<E>
- Returns:
- An immutable value
-