Class IngredientCollectionWrapper<T,M,W extends IIngredientCollection<T,M>>
java.lang.Object
org.cyclops.cyclopscore.ingredient.collection.IngredientCollectionWrapper<T,M,W>
- Type Parameters:
T
- An instance type.M
- The matching condition parameter.
- All Implemented Interfaces:
Iterable<T>
,IIngredientCollection<T,
,M> IIngredientCollectionLike<T,
M, T>
- Direct Known Subclasses:
IngredientCollectionMutableWrapper
public class IngredientCollectionWrapper<T,M,W extends IIngredientCollection<T,M>>
extends Object
implements IIngredientCollection<T,M>
An ingredient collection that wraps over another ingredient collection.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
Check if this collection contains the given instance.boolean
Check if this collection contains the given instance under the given match conditions.boolean
containsAll
(Iterable<? extends T> instances) Check if this collection contains all the given instances.boolean
containsAll
(Iterable<? extends T> instances, M matchCondition) Check if this collection contains all the given instances under the given match conditions.int
Count the number of occurrences of the given instance under the given match conditions.boolean
Check if this collection equals the given object.protected W
int
hashCode()
boolean
isEmpty()
iterator()
An iterator over this collection over all occurrences of the given instance under the given match conditions.int
size()
toString()
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.cyclops.cyclopscore.ingredient.collection.IIngredientCollection
parallelStream, spliterator, stream, toArray
-
Constructor Details
-
IngredientCollectionWrapper
-
-
Method Details
-
getInnerCollection
-
contains
Description copied from interface:IIngredientCollection
Check if this collection contains the given instance. This instance will be compared based on the matcher from the ingredient component type.- Specified by:
contains
in interfaceIIngredientCollection<T,
M> - Parameters:
instance
- An instance.- Returns:
- If this collection contains the given instance.
-
contains
Description copied from interface:IIngredientCollection
Check if this collection contains the given instance under the given match conditions. This instance will be compared based on the matcher from the ingredient component type using the given match condition.- Specified by:
contains
in interfaceIIngredientCollection<T,
M> - Parameters:
instance
- An instance.matchCondition
- A match condition.- Returns:
- If this collection contains the given instance under the given match conditions.
-
containsAll
Description copied from interface:IIngredientCollection
Check if this collection contains all the given instances. The instances will be compared based on the matcher from the ingredient component type.- Specified by:
containsAll
in interfaceIIngredientCollection<T,
M> - Parameters:
instances
- Instances.- Returns:
- If this collection contains all the given instances.
-
containsAll
Description copied from interface:IIngredientCollection
Check if this collection contains all the given instances under the given match conditions. The instances will be compared based on the matcher from the ingredient component type using the given match condition.- Specified by:
containsAll
in interfaceIIngredientCollection<T,
M> - Parameters:
instances
- Instances.matchCondition
- A match condition.- Returns:
- If this collection contains all the given instances under the given match conditions.
-
count
Description copied from interface:IIngredientCollection
Count the number of occurrences of the given instance under the given match conditions. This instance will be compared based on the matcher from the ingredient component type using the given match condition.- Specified by:
count
in interfaceIIngredientCollection<T,
M> - Parameters:
instance
- An instance.matchCondition
- A match condition.- Returns:
- The number of occurrences of the given instance under the given match conditions.
-
getComponent
- Specified by:
getComponent
in interfaceIIngredientCollectionLike<T,
M, W extends IIngredientCollection<T, M>> - Returns:
- The ingredient component type of which this collection contains instances.
-
size
public int size()- Specified by:
size
in interfaceIIngredientCollectionLike<T,
M, W extends IIngredientCollection<T, M>> - Returns:
- The number of instances contained in this collection.
-
isEmpty
public boolean isEmpty()- Specified by:
isEmpty
in interfaceIIngredientCollectionLike<T,
M, W extends IIngredientCollection<T, M>> - Returns:
- If the are no instances in this collection.
-
iterator
Description copied from interface:IIngredientCollection
An iterator over this collection over all occurrences of the given instance under the given match conditions.- Specified by:
iterator
in interfaceIIngredientCollection<T,
M> - Specified by:
iterator
in interfaceIIngredientCollectionLike<T,
M, W extends IIngredientCollection<T, M>> - Parameters:
instance
- An instance.matchCondition
- A match condition.- Returns:
- An iterator over this collection over all occurrences of the given instance under the given match conditions.
-
iterator
-
hashCode
public int hashCode()- Specified by:
hashCode
in interfaceIIngredientCollectionLike<T,
M, W extends IIngredientCollection<T, M>> - Overrides:
hashCode
in classObject
- Returns:
- A hashcode of this collection, based on the hash codes, provided by the component type.
-
equals
Description copied from interface:IIngredientCollectionLike
Check if this collection equals the given object.- Specified by:
equals
in interfaceIIngredientCollectionLike<T,
M, W extends IIngredientCollection<T, M>> - Overrides:
equals
in classObject
- Parameters:
obj
- An object.- Returns:
- True if the given object is an ingredient collection of the same type, component type and contains the same instances.
-
toString
- Specified by:
toString
in interfaceIIngredientCollectionLike<T,
M, W extends IIngredientCollection<T, M>> - Overrides:
toString
in classObject
- Returns:
- A string representation of this collection, provided by the component type.
-