| 509 | } |
| 510 | |
| 511 | hash_t HashConcatenation(const ArrayVector& arrays, int64_t bits_offset = -1, |
| 512 | int64_t num_bits = -1) { |
| 513 | EXPECT_OK_AND_ASSIGN(auto concat, Concatenate(arrays)); |
| 514 | EXPECT_EQ(concat->type()->id(), Type::BOOL); |
| 515 | if (bits_offset == -1 || num_bits == -1) { |
| 516 | return HashDataBitmap(*concat->data()); |
| 517 | } |
| 518 | auto slice = concat->Slice(bits_offset, num_bits); |
| 519 | return HashDataBitmap(*slice->data()); |
| 520 | } |
| 521 | |
| 522 | TEST(BitmapHashTest, SmallInputs) { |
| 523 | for (bool start : {false, true}) { |