mirror of
https://gitlab.kitware.com/vtk/vtk-m
synced 2024-09-19 10:35:42 +00:00
ac889b5004
The `VecTraits` class allows templated functions, methods, and classes to treat type arguments uniformly as `Vec` types or to otherwise differentiate between scalar and vector types. This only works for types that `VecTraits` is defined for. The `VecTraits` templated class now has a default implementation that will be used for any type that does not have a `VecTraits` specialization. This removes many surprise compiler errors when using a template that, unknown to you, has `VecTraits` in its implementation. One potential issue is that if `VecTraits` gets defined for a new type, the behavior of `VecTraits` could change for that type in backward-incompatible ways. If `VecTraits` is used in a purely generic way, this should not be an issue. However, if assumptions were made about the components and length, this could cause problems. Fixes #589 |
||
---|---|---|
.. | ||
ArrayCopyUnknown.cxx | ||
ArrayCopyUnknown.h | ||
ArrayHandleExecutionManager.h | ||
ArrayPortalFromIterators.h | ||
ArrayTransfer.h | ||
Buffer.cxx | ||
Buffer.h | ||
CastInvalidValue.h | ||
CellLocatorBase.h | ||
CMakeLists.txt | ||
ConnectivityExplicitInternals.h | ||
ConvertNumComponentsToOffsetsTemplate.h | ||
DefaultTypesAscent.h.in | ||
DefaultTypesVTK.h.in | ||
DeviceAdapterAlgorithmGeneral.h | ||
DeviceAdapterListHelpers.h | ||
DeviceAdapterMemoryManager.cxx | ||
DeviceAdapterMemoryManager.h | ||
DeviceAdapterMemoryManagerShared.cxx | ||
DeviceAdapterMemoryManagerShared.h | ||
FieldCollection.cxx | ||
FieldCollection.h | ||
FunctorsGeneral.h | ||
IteratorFromArrayPortal.h | ||
KXSort.h | ||
MapArrayPermutation.cxx | ||
MapArrayPermutation.h | ||
OptionParser.h | ||
OptionParserArguments.h | ||
ParallelRadixSort.h | ||
ParallelRadixSortInterface.h | ||
PointLocatorBase.h | ||
ReverseConnectivityBuilder.h | ||
RuntimeDeviceConfiguration.cxx | ||
RuntimeDeviceConfiguration.h | ||
RuntimeDeviceConfigurationOptions.cxx | ||
RuntimeDeviceConfigurationOptions.h | ||
RuntimeDeviceOption.cxx | ||
RuntimeDeviceOption.h | ||
StorageError.h |