acts-project / vecmem

Vectorised data model base and helper classes.
https://acts-project.github.io/vecmem/
Mozilla Public License 2.0
19 stars 13 forks source link

Extra Utility Types, main branch (2023.12.05.) #250

Closed krasznaa closed 11 months ago

krasznaa commented 11 months ago

This is step 1 in getting #246 into the repository.

Introduced vecmem::tuple, vecmem::details::disjunction and vecmem::details::negation. All in preparation for the SoA EDM base classes.

Not sure yet how I'll make the rest of #246 digestible, but for now let's just get this reviewed. Then we'll see about the rest. :wink:

krasznaa commented 11 months ago

Only noticed with a delay that the constructors of vecmem::tuple should be simplified a bit. Just as for vecmem::data::vector_view and friends, if we want to use such types directly as parameters of a SYCL kernel, they have to have "proper default constructors".

And this change seemingly also brought a build failure forward. :thinking: Interesting that Clang (which is what I tested this change with) didn't complain about that variable. :thinking: