public final class FilteredOffset extends Offset
| Modifier and Type | Method and Description | 
|---|---|
Offset | 
clone()
clone() is not supported by FilteredOffset because it's not possible to clone  
filterMatcher, and
 while re-creating filterMatcher could be not very cheap for some implementations of Filter. | 
ReadableOffset | 
getBaseReadableOffset()
Returns the same offset ("this") or a readable "view" of this offset, which always returns the same value from
  
ReadableOffset.getOffset(), as this offset. | 
int | 
getOffset()  | 
void | 
increment()  | 
void | 
inspectRuntimeShape(RuntimeShapeInspector inspector)
Implementations of this method should call  
inspector.visit() with all fields of this class, which meet two
 conditions:
  1. | 
void | 
reset()
Resets the Offset to the position it was created or cloned with. 
 | 
boolean | 
withinBounds()  | 
public boolean withinBounds()
withinBounds in class Offsetpublic void reset()
Offsetpublic ReadableOffset getBaseReadableOffset()
OffsetReadableOffset.getOffset(), as this offset. This method is useful for "unwrapping" such offsets as FilteredOffset and reduce reference indirection, when only ReadableOffset API is needed.getBaseReadableOffset in class Offsetpublic Offset clone()
filterMatcher, and
 while re-creating filterMatcher could be not very cheap for some implementations of Filter. Although this
 approach could be investigated.
 If clone is made possible for FilteredOffset, some improvements could become possible in PooledTopNAlgorithm.computeSpecializedScanAndAggregateImplementations().
 See also https://github.com/druid-io/druid/issues/5132.public int getOffset()
public void inspectRuntimeShape(RuntimeShapeInspector inspector)
HotLoopCalleeinspector.visit() with all fields of this class, which meet two
 conditions:
  1. They are used in methods of this class, annotated with CalledFromHotLoop
  2. They are either:
     a. Nullable objects
     b. Instances of HotLoopCallee
     c. Objects, which don't always have a specific class in runtime. For example, a field of type Set could be HashSet or TreeSet in runtime, depending on how
        this instance (the instance on which inspectRuntimeShape() is called) is configured.
     d. ByteBuffer or similar objects, where byte order matters
     e. boolean flags, affecting branch taking
     f. Arrays of objects, meeting any of conditions a-e.Copyright © 2011–2018. All rights reserved.