VTK-m  2.2
StaticAssert.h
Go to the documentation of this file.
1 //============================================================================
2 // Copyright (c) Kitware, Inc.
3 // All rights reserved.
4 // See LICENSE.txt for details.
5 //
6 // This software is distributed WITHOUT ANY WARRANTY; without even
7 // the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
8 // PURPOSE. See the above copyright notice for more information.
9 //============================================================================
10 #ifndef vtk_m_StaticAssert_h
11 #define vtk_m_StaticAssert_h
12 
13 
14 #include <type_traits>
15 
16 #define VTKM_STATIC_ASSERT(condition) \
17  static_assert((condition), "Failed static assert: " #condition)
18 #define VTKM_STATIC_ASSERT_MSG(condition, message) static_assert((condition), message)
19 
20 namespace vtkm
21 {
22 
23 template <bool noError>
25 
26 template <>
27 struct ReadTheSourceCodeHereForHelpOnThisError<true> : std::true_type
28 {
29 };
30 
31 } // namespace vtkm
32 
33 #define VTKM_READ_THE_SOURCE_CODE_FOR_HELP(noError) \
34  VTKM_STATIC_ASSERT(vtkm::ReadTheSourceCodeHereForHelpOnThisError<noError>::value)
35 
36 #endif //vtk_m_StaticAssert_h
vtkm
Groups connected points that have the same field value.
Definition: Atomic.h:19
vtkm::ReadTheSourceCodeHereForHelpOnThisError
Definition: StaticAssert.h:24