[FEA] Add Generic scalar device view
- Dominant language
- C++
- Stars
- 9.8k
- Forks
- 1.1k
- Avg merge
- 3d 6m
- Merged PRs (30d)
- 278
Description
**Is your feature request related to a problem? Please describe.**
The scalar in libcudf does not provide a common interface to access values.
Each type has their own scalar device view
Eg. `numeric_scalar_device_view`, `fixed_point_scalar_device_view`, `timestamp_scalar_device_view`, `duration_scalar_device_view`, `string_scalar_device_view`.
**Describe the solution you'd like**
Create a _Generic Scalar device view_ to support both fixed width types and string types. List and Struct view types are out of scope now. This scalar device view should have element accessor, so that type dispatch in device works.
This will be useful for AST, and binary ops. (and any other operations where device side access of scalar is required). This may also replace existing type specific scalar device views.
**Describe alternatives you've considered**
Fixed width types have a type erased `fixed_width_scalar_device_view_base` which is used in AST.
**Additional context**
For string scalar support for AST https://github.com/rapidsai/cudf/pull/13061, a new generic scalar is created in ast namespace for its usage.
Contributor guide
Assessment
This issue has not been assessed yet.