state.getBoost()*lengthNorm(numTerms)
, where numTerms
is {@link FieldInvertState#getLength()} if {@link #setDiscountOverlaps} is false, else it's {@link FieldInvertState#getLength()} - {@link FieldInvertState#getNumOverlap()}. WARNING: This API is new and experimental, and may suddenly change.
Implementations should calculate a float value based on the field state and then return that value.
For backward compatibility this method by default calls {@link #lengthNorm(String,int)} passing{@link FieldInvertState#getLength()} as the second argument, andthen multiplies this value by {@link FieldInvertState#getBoost()}.
WARNING: This API is new and experimental and may suddenly change.
@param field field name @param state current processing state for this field @return the calculated float normMatches in longer fields are less precise, so implementations of this method usually set smaller values when state.getLength()
is large, and larger values when state.getLength()
is small.
@lucene.experimental
@param state current processing state for this field
@return computed norm value
|
|
|
|