Interface PriorityProvider<Context,Condition extends PriorityProvider.SelectorCondition<Context>>
- All Known Implementing Classes:
CatVariant,ChickenVariant,CowVariant,FrogVariant,PigVariant,WolfVariant
public interface PriorityProvider<Context,Condition extends PriorityProvider.SelectorCondition<Context>>
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic final recordstatic interfacestatic final record -
Method Summary
Modifier and TypeMethodDescriptionstatic <Context,Condition extends PriorityProvider.SelectorCondition<Context>>
List<PriorityProvider.Selector<Context, Condition>> alwaysTrue(int priority) static <C,T> Optional <T> pick(Stream<T> elements, Function<T, PriorityProvider<C, ?>> entryGetter, RandomSource random, C context) static <C,T> Stream <T> select(Stream<T> elements, Function<T, PriorityProvider<C, ?>> entryGetter, C context) static <Context,Condition extends PriorityProvider.SelectorCondition<Context>>
List<PriorityProvider.Selector<Context, Condition>> single(Condition condition, int priority)
-
Method Details
-
selectors
List<PriorityProvider.Selector<Context,Condition>> selectors() -
select
static <C,T> Stream<T> select(Stream<T> elements, Function<T, PriorityProvider<C, ?>> entryGetter, C context) -
pick
static <C,T> Optional<T> pick(Stream<T> elements, Function<T, PriorityProvider<C, ?>> entryGetter, RandomSource random, C context) -
single
static <Context,Condition extends PriorityProvider.SelectorCondition<Context>> List<PriorityProvider.Selector<Context,Condition>> single(Condition condition, int priority) -
alwaysTrue
static <Context,Condition extends PriorityProvider.SelectorCondition<Context>> List<PriorityProvider.Selector<Context,Condition>> alwaysTrue(int priority)
-