Class DualFloatFunction
- java.lang.Object
-
- org.apache.lucene.queries.function.ValueSource
-
- org.apache.lucene.queries.function.valuesource.DualFloatFunction
-
- Direct Known Subclasses:
DivFloatFunction
,PowFloatFunction
public abstract class DualFloatFunction extends ValueSource
AbstractValueSource
implementation which wraps two ValueSources and applies an extendible float function to their values.
-
-
Field Summary
Fields Modifier and Type Field Description protected ValueSource
a
protected ValueSource
b
-
Constructor Summary
Constructors Constructor Description DualFloatFunction(ValueSource a, ValueSource b)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
createWeight(Map<Object,Object> context, IndexSearcher searcher)
Implementations should propagate createWeight to sub-ValueSources which can optionally store weight info in the context.String
description()
description of field, used in explain()boolean
equals(Object o)
protected abstract float
func(int doc, FunctionValues aVals, FunctionValues bVals)
FunctionValues
getValues(Map<Object,Object> context, LeafReaderContext readerContext)
Gets the values for this reader and the context that was previously passed to createWeight().int
hashCode()
protected abstract String
name()
-
Methods inherited from class org.apache.lucene.queries.function.ValueSource
asDoubleValuesSource, asLongValuesSource, fromDoubleValuesSource, getSortField, newContext, toString
-
-
-
-
Field Detail
-
a
protected final ValueSource a
-
b
protected final ValueSource b
-
-
Constructor Detail
-
DualFloatFunction
public DualFloatFunction(ValueSource a, ValueSource b)
- Parameters:
a
- the base.b
- the exponent.
-
-
Method Detail
-
name
protected abstract String name()
-
func
protected abstract float func(int doc, FunctionValues aVals, FunctionValues bVals) throws IOException
- Throws:
IOException
-
description
public String description()
Description copied from class:ValueSource
description of field, used in explain()- Specified by:
description
in classValueSource
-
getValues
public FunctionValues getValues(Map<Object,Object> context, LeafReaderContext readerContext) throws IOException
Description copied from class:ValueSource
Gets the values for this reader and the context that was previously passed to createWeight(). The values must be consumed in a forward docID manner, and you must call this method again to iterate through the values again.- Specified by:
getValues
in classValueSource
- Throws:
IOException
-
createWeight
public void createWeight(Map<Object,Object> context, IndexSearcher searcher) throws IOException
Description copied from class:ValueSource
Implementations should propagate createWeight to sub-ValueSources which can optionally store weight info in the context. The context object will be passed to getValues() where this info can be retrieved.- Overrides:
createWeight
in classValueSource
- Throws:
IOException
-
hashCode
public int hashCode()
- Specified by:
hashCode
in classValueSource
-
equals
public boolean equals(Object o)
- Specified by:
equals
in classValueSource
-
-