Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FEA] Variadic ctor parameters #207

Open
4 tasks done
sleeepyjack opened this issue Aug 9, 2022 · 2 comments · May be fixed by #297
Open
4 tasks done

[FEA] Variadic ctor parameters #207

sleeepyjack opened this issue Aug 9, 2022 · 2 comments · May be fixed by #297
Labels
type: feature request New feature request

Comments

@sleeepyjack
Copy link
Collaborator

sleeepyjack commented Aug 9, 2022

Part of #110 (Refactor of open address data structures)

Development branch: NVIDIA/cuCollections/refactor

Synopsis

To make it convenient to construct a static_set or other data structures with a variety of configuration parameters, we want to use a variadic constructor pattern.

TODOs

References

@sleeepyjack sleeepyjack added the type: feature request New feature request label Aug 9, 2022
@sleeepyjack sleeepyjack changed the title [FEA] [REFACTOR] Variadic ctor parameters [FEA] Variadic ctor parameters Aug 9, 2022
@sleeepyjack
Copy link
Collaborator Author

sleeepyjack commented Aug 25, 2022

Initial prototype: https://godbolt.org/z/Kj763Teon

This approach still needs some refinement but enables us to use fully variadic ctors if we opt for strong types for all parameters.
We could also use this in member functions to pass optional parameters,e.g., pass an optional CUDA stream to one of the bulk functions.

Build on gcc works but nvcc fails to understand the deduction guide. Investigating...

@sleeepyjack
Copy link
Collaborator Author

New version: tested on gcc, nvcc 11.0-11.7 and has better diagnostics: https://godbolt.org/z/5Ghac54E6

@sleeepyjack sleeepyjack linked a pull request Apr 26, 2023 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: feature request New feature request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant