Is your feature request related to a problem? Please describe.
primitive_row_operators.cuh contains both primitive row equality and hashing, along with their shared type dispatch. The new primitive_lexicographic.cuh also includes it just to reuse the primitive type map.
Describe the solution you'd like
Split the operators into their own headers:
primitive_equality.cuh for the equality comparators.
primitive_hashing.cuh for the hashers.
primitive_common.cuh for the shared primitive type map and compatibility declaration.
Update callers, including primitive_lexicographic.cuh, to include the headers they use. Keep the existing APIs and behavior.
Describe alternatives you've considered
Keep the combined header, which makes lexicographic comparison pull in equality and hashing just to use the shared dispatch.
Additional context
Follow-up after #24138 is merged.
Is your feature request related to a problem? Please describe.
primitive_row_operators.cuhcontains both primitive row equality and hashing, along with their shared type dispatch. The newprimitive_lexicographic.cuhalso includes it just to reuse the primitive type map.Describe the solution you'd like
Split the operators into their own headers:
primitive_equality.cuhfor the equality comparators.primitive_hashing.cuhfor the hashers.primitive_common.cuhfor the shared primitive type map and compatibility declaration.Update callers, including
primitive_lexicographic.cuh, to include the headers they use. Keep the existing APIs and behavior.Describe alternatives you've considered
Keep the combined header, which makes lexicographic comparison pull in equality and hashing just to use the shared dispatch.
Additional context
Follow-up after #24138 is merged.