Rowles.LeanLucene.Codecs.DocValues
Classes
FieldLengthReader
Reads exact per-field per-doc token counts from a
.flnfile. ReturnsDictionary<string, int[]>keyed by field name. Supports both VarInt (v2) and fixed ushort (v1) formats. Falls back gracefully when the file does not exist (caller should use quantised norms).
FieldLengthWriter
Writes exact per-field per-doc token counts to a
.flnfile. Layout v2: [Header][FieldCount:int32]([FieldNameLen:int32][FieldNameUTF8][DocCount:int32][VarInt * DocCount])* Uses VarInt encoding: 1 byte for lengths < 128, 2 bytes for < 16384.
NormsReader
Reads quantised per-field norm values as compact byte arrays. Uses memory-mapped I/O to avoid loading the entire file into a managed byte[].
NormsWriter
Quantises float norms to single bytes and writes them to disc. Writes per-field norms for accurate BM25 field-length normalisation.
NumericDocValuesReader
Reads per-document numeric values from a column-stride .dvn file.
NumericDocValuesWriter
Writes per-document numeric values in a compact column-stride format (.dvn). Layout per field: [fieldName (length-prefixed UTF-8)] [docCount: int32] [minValue: int64] [bitsPerValue: byte] [packed values...]. Uses delta-from-min encoding with bit packing.
SortedDocValuesReader
Reads per-document string values from a column-stride .dvs file.
SortedDocValuesWriter
Writes per-document string values in a column-stride format (.dvs). Layout: [fieldCount: int32] per field: [fieldName] [docCount: int32] [ordCount: int32] [ord table: length-prefixed strings] [ords: packed ints]. Deduplicates values via an ordinal table.