| 49 | void initialize() override; |
| 50 | |
| 51 | bool needsInput() const override { |
| 52 | if (state_ == ProbeOperatorState::kFinish || noMoreInput_ || |
| 53 | noMoreSpillInput_ || input_ != nullptr) { |
| 54 | return false; |
| 55 | } |
| 56 | if (table_) { |
| 57 | return true; |
| 58 | } |
| 59 | // NOTE: if we can't apply dynamic filtering, then we can start early to |
| 60 | // read input even before the hash table has been built. |
| 61 | auto channels = operatorCtx_->driverCtx()->driver->canPushdownFilters( |
| 62 | this, keyChannels_); |
| 63 | return channels.empty(); |
| 64 | } |
| 65 | |
| 66 | void addInput(RowVectorPtr input) override; |
| 67 |
nothing calls this directly
no test coverage detected