rewrite
Return a DoubleValuesSource specialised for the given IndexSearcher
Implementations should assume that this will only be called once. IndexReader-independent implementations can just return this
Queries that use DoubleValuesSource objects should call rewrite() during rather than during to avoid IndexReader reference leakage.
For the same reason, implementations that cache references to the IndexSearcher should return a new object from this method.