You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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.
To make this more generic, instead of the get_or_default<T> function looking for a concrete type T, it could look for the first type that satisfies a given concept C, e.g., get_or_default<C>. If necessary, use unique member tags to disambiguate a concept.
Optional: Ctors that only take a variadic parameter pack (helpful to cuco::bloom_filter #101). For this, we need a mechanism to detect if all mandatory parameters are present, e.g., get_or_error<T>.
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...
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
https://godbolt.org/z/T4oP1nsoWhttps://godbolt.org/z/Kj763Teonhttps://godbolt.org/z/5Ghac54E6get_or_default<T>
function looking for a concrete typeT
, it could look for the first type that satisfies a given concept C, e.g.,get_or_default<C>
. If necessary, use unique member tags to disambiguate a concept.get_or_error<T>
.References
The text was updated successfully, but these errors were encountered: