Package ai.timefold.solver.core.impl.bavet.common.index
package ai.timefold.solver.core.impl.bavet.common.index
This package contains code that deals with indexing of tuples.
The entry point is
IndexerFactory,
which also contains a description of the entire mechanism.-
ClassDescriptionCached in tuples; each tuple carries its unique instance.Unlike
DefaultUniqueRandomIterator, this class only returns elements that match the given filter.Indexer<T>An indexer for entity or factX, maps a property or a combination of properties ofX, denoted bycompositeKey, to all instances ofXthat match those properties, depending on the indexer type (equal, lower than, contain, ...).Bottom-most indexer in the indexer chain.IndexerFactory<Right_>Indexersform a parent-child hierarchy, each child has exactly one parent.IndexerFactory.KeysExtractor<Tuple_ extends Tuple>Represents a function which extracts index keys from a tuple.IndexerFactory.QuadKeysExtractor<A,B, C, D> Super-fast, but doesn't support random access.AnIndexerBackendthat supports random access to its entries.Exists to support random unique selection.