## Uses of Package
org.apache.lucene.util

Packages that use org.apache.lucene.util
org.apache.lucene.analysis: API and code to convert text into indexable/searchable tokens.
org.apache.lucene.analysis.standard: Standards-based analyzers implemented with JFlex.
org.apache.lucene.analysis.tokenattributes: Useful `Attribute`s for text analysis.
org.apache.lucene.collation: `CollationKeyFilter` converts each token into its binary `CollationKey` using the provided `Collator`, and then encode the `CollationKey` as a String using `IndexableBinaryStringTools`, to allow it to be stored as an index term.
org.apache.lucene.index: Code to maintain and access indices.
org.apache.lucene.queryParser: A simple query parser implemented with JavaCC.
org.apache.lucene.search: Code to search indices.
org.apache.lucene.util: Some utility classes.
org.apache.lucene.util.fst: Finite state transducers

Classes in org.apache.lucene.util used by org.apache.lucene.analysis
Attribute Base interface for attributes.
AttributeImpl Base class for Attributes that can be added to a `AttributeSource`.
AttributeReflector This interface is used to reflect contents of `AttributeSource` or `AttributeImpl`.
AttributeSource An AttributeSource contains a list of different `AttributeImpl`s, and methods to add and get them.
AttributeSource.AttributeFactory An AttributeFactory creates instances of `AttributeImpl`s.
Version Use by certain classes to match version compatibility across releases of Lucene.

Classes in org.apache.lucene.util used by org.apache.lucene.analysis.standard
AttributeSource An AttributeSource contains a list of different `AttributeImpl`s, and methods to add and get them.
AttributeSource.AttributeFactory An AttributeFactory creates instances of `AttributeImpl`s.
Version Use by certain classes to match version compatibility across releases of Lucene.

Classes in org.apache.lucene.util used by org.apache.lucene.analysis.tokenattributes
Attribute Base interface for attributes.
AttributeImpl Base class for Attributes that can be added to a `AttributeSource`.
AttributeReflector This interface is used to reflect contents of `AttributeSource` or `AttributeImpl`.

Classes in org.apache.lucene.util used by org.apache.lucene.collation
AttributeSource An AttributeSource contains a list of different `AttributeImpl`s, and methods to add and get them.

Classes in org.apache.lucene.util used by org.apache.lucene.index
AttributeSource An AttributeSource contains a list of different `AttributeImpl`s, and methods to add and get them.
BitVector Optimized implementation of a vector of bits.
SetOnce A convenient class which offers a semi-immutable object wrapper implementation which allows one to set the value of an object exactly once, and retrieve it many times.
TwoPhaseCommit An interface for implementations that support 2-phase commit.
Version Use by certain classes to match version compatibility across releases of Lucene.

Classes in org.apache.lucene.util used by org.apache.lucene.queryParser
Version Use by certain classes to match version compatibility across releases of Lucene.

Classes in org.apache.lucene.util used by org.apache.lucene.search
Bits Interface for Bitset-like structures.
Counter Simple counter class
PriorityQueue A PriorityQueue maintains a partial ordering of its elements such that the least element can always be found in constant time.

Classes in org.apache.lucene.util used by org.apache.lucene.util
Attribute Base interface for attributes.
AttributeImpl Base class for Attributes that can be added to a `AttributeSource`.
AttributeReflector This interface is used to reflect contents of `AttributeSource` or `AttributeImpl`.
AttributeSource An AttributeSource contains a list of different `AttributeImpl`s, and methods to add and get them.
AttributeSource.AttributeFactory An AttributeFactory creates instances of `AttributeImpl`s.
AttributeSource.State This class holds the state of an AttributeSource.
Bits Interface for Bitset-like structures.
ByteBlockPool Class that Posting and PostingVector use to write byte streams into shared fixed-size byte[] arrays.
ByteBlockPool.Allocator Abstract class for allocating and freeing byte blocks.
BytesRef Represents byte[], as a slice (offset + length) into an existing byte[].
BytesRefHash.BytesStartArray Manages allocation of the per-term addresses.
BytesRefIterator A simple iterator interface for `BytesRef` iteration.
CharacterUtils `CharacterUtils` provides a unified interface to Character-related operations to implement backwards compatible character operations based on a `Version` instance.
CharacterUtils.CharacterBuffer A simple IO buffer to use with `CharacterUtils.fill(CharacterBuffer, Reader)`.
CharsRef Represents char[], as a slice (offset + length) into an existing char[].
Counter Simple counter class
DoubleBarrelLRUCache.CloneableKey Object providing clone(); the key class must subclass this.
DummyConcurrentLock A dummy lock as a replacement for `ReentrantLock` to disable locking
FieldCacheSanityChecker.Insanity Simple container for a collection of related CacheEntry objects that in conjunction with each other represent some "insane" usage of the FieldCache.
FieldCacheSanityChecker.InsanityType An Enumeration of the different types of "insane" behavior that may be detected in a FieldCache.
FixedBitSet BitSet of fixed length (numBits), backed by accessible (`FixedBitSet.getBits()`) long[], accessed with an int index, implementing Bits and DocIdSet.
IntsRef Represents int[], as a slice (offset + length) into an existing int[].
NumericUtils.IntRangeBuilder Expert: Callback for `NumericUtils.splitIntRange(org.apache.lucene.util.NumericUtils.IntRangeBuilder, int, int, int)`.
NumericUtils.LongRangeBuilder Expert: Callback for `NumericUtils.splitLongRange(org.apache.lucene.util.NumericUtils.LongRangeBuilder, int, long, long)`.
OpenBitSet An "open" BitSet implementation that allows direct access to the array of words storing the bits.
PagedBytes Represents a logical byte[] as a series of pages.
PagedBytes.PagedBytesDataInput
PagedBytes.PagedBytesDataOutput
PagedBytes.Reader Provides methods to read BytesRefs from a frozen PagedBytes.
RamUsageEstimator.JvmFeature JVM diagnostic features.
StringInterner Subclasses of StringInterner are required to return the same single String object for all equal strings.
TwoPhaseCommit An interface for implementations that support 2-phase commit.
TwoPhaseCommitTool.CommitFailException Thrown by `TwoPhaseCommitTool.execute(TwoPhaseCommit...)` when an object fails to commit().
TwoPhaseCommitTool.PrepareCommitFailException Thrown by `TwoPhaseCommitTool.execute(TwoPhaseCommit...)` when an object fails to prepareCommit().
UnicodeUtil.UTF16Result Holds decoded UTF16 code units.
UnicodeUtil.UTF8Result Holds decoded UTF8 code units.
Version Use by certain classes to match version compatibility across releases of Lucene.
VirtualMethod A utility for keeping backwards compatibility on previously abstract methods (or similar replacements).
WeakIdentityMap Implements a combination of `WeakHashMap` and `IdentityHashMap`.

Classes in org.apache.lucene.util used by org.apache.lucene.util.fst
BytesRef Represents byte[], as a slice (offset + length) into an existing byte[].
IntsRef Represents int[], as a slice (offset + length) into an existing int[].