| 265 | } |
| 266 | |
| 267 | std::optional<bool> BaseVector::equalValueAt( |
| 268 | const BaseVector* other, |
| 269 | vector_size_t index, |
| 270 | vector_size_t otherIndex, |
| 271 | CompareFlags::NullHandlingMode nullHandlingMode) const { |
| 272 | const CompareFlags compareFlags = CompareFlags::equality(nullHandlingMode); |
| 273 | std::optional<int32_t> result = |
| 274 | compare(other, index, otherIndex, compareFlags); |
| 275 | if (result.has_value()) { |
| 276 | return result.value() == 0; |
| 277 | } |
| 278 | |
| 279 | return std::nullopt; |
| 280 | } |
| 281 | |
| 282 | template <TypeKind kind> |
| 283 | static VectorPtr createEmpty( |