STK++ 0.9.13
|
In this file we define a StaticAssert convenience structure for error checking at compile time. More...
Go to the source code of this file.
Classes | |
struct | STK::StaticAssert< condition > |
struct | STK::StaticAssert< false > |
struct | STK::StaticAssert< true > |
Namespaces | |
namespace | STK |
The namespace STK is the main domain space of the Statistical ToolKit project. | |
Macros | |
#define | STK_SINGLE_ARG2(A, B) A,B |
#define | STK_SINGLE_ARG3(A, B, C) A,B,C |
#define | STK_SINGLE_ARG4(A, B, C, D) A,B,C,D |
#define | STK_SINGLE_ARG5(A, B, C, D, E) A,B,C,D,E |
#define | STK_STATIC_ASSERT(COND, MSG) if (STK::StaticAssert<COND>::MSG) {} |
#define | STK_STATIC_ASSERT_SAME_ORIENTATION(COND) STK_STATIC_ASSERT(COND,YOU_TRIED_TO_CONSTRUCT_A_REFERENCE_WITH_A_DIFFERENT_ORIENTATION) |
#define | STK_STATIC_ASSERT_DIMENSIONS_MISMATCH(COND) STK_STATIC_ASSERT(COND,YOU_TRIED_TO_APPLY_A_METHOD_BETWEEN_NOT_COMPATIBLE_ARRAYS) |
#define | STK_STATIC_ASSERT_SQUARE_SIZES_MISMATCH(COND) STK_STATIC_ASSERT(COND,YOU_TRIED_TO_CONSTRUCT_A_SQUAREMATRIX_WITH_DIFFERENT_DIMENSIONS) |
#define | STK_STATIC_ASSERT_VECTOR_SIZECOLS_MISMATCH(COND) STK_STATIC_ASSERT(COND,YOU_TRIED_TO_CONSTRUCT_A_VECTOR_WITH_MORE_THAN_ONE_COLUM) |
#define | STK_STATIC_ASSERT_POINT_SIZEROWS_MISMATCH(COND) STK_STATIC_ASSERT(COND,YOU_TRIED_TO_CONSTRUCT_A_POINT_WITH_MORE_THAN_ONE_ROW) |
#define | STK_STATIC_ASSERT_SCALAR_SIZE_MISMATCH(COND) STK_STATIC_ASSERT(COND,YOU_TRIED_TO_CONSTRUCT_A_SCALAR_WITH_MORE_THAN_ONE_ROW_OR_ONE_COLUMN) |
#define | STK_STATIC_ASSERT_ROWS_DIMENSIONS_MISMATCH(COND) STK_STATIC_ASSERT(COND,YOU_TRIED_TO_APPLY_A_BINARY_OPERATOR_WITH_WRONG_ROWS_SIZE) |
#define | STK_STATIC_ASSERT_COLS_DIMENSIONS_MISMATCH(COND) STK_STATIC_ASSERT(COND,YOU_TRIED_TO_APPLY_A_BINARY_OPERATOR_WITH_WRONG_COLS_SIZE) |
#define | STK_STATIC_ASSERT_BINARY_OPERATOR_DIMENSIONS_MISMATCH(COND) STK_STATIC_ASSERT(COND,YOU_TRIED_TO_APPLY_A_BINARY_OPERATOR_WITH_WRONG_DIMENSIONS_SIZE) |
#define | STK_STATIC_ASSERT_BINARY_OPERATOR_MISMATCH(COND) STK_STATIC_ASSERT(COND,YOU_TRIED_TO_APPLY_A_BINARY_OPERATOR_BETWEEN_NOT_COMPATIBLE_ARRAYS) |
#define | STK_STATIC_ASSERT_PRODUCT_OPERATOR_MISMATCH(COND) STK_STATIC_ASSERT(COND,YOU_TRIED_TO_APPLY_A_PRODUCT_OPERATOR_BETWEEN_NOT_COMPATIBLE_ARRAYS) |
#define | STK_STATIC_ASSERT_TWO_DIMENSIONS_ONLY(EXPR) |
#define | STK_STATIC_ASSERT_ONE_DIMENSION_ONLY(EXPR) |
#define | STK_STATIC_ASSERT_SAME_ORIENT(LHS, RHS) |
#define | STK_STATIC_ASSERT_DENSE_ONLY(EXPR) |
#define | STK_STATIC_ASSERT_POINT_ONLY(EXPR) |
#define | STK_STATIC_ASSERT_VECTOR_ONLY(EXPR) |
#define | STK_STATIC_ASSERT_POINT_OR_VECTOR_ONLY(EXPR) |
#define | STK_STATIC_ASSERT_ZERO_DIMENSION_ONLY(EXPR) |
In this file we define a StaticAssert convenience structure for error checking at compile time.
Definition in file STK_StaticAssert.h.
#define STK_SINGLE_ARG2 | ( | A, | |
B | |||
) | A,B |
Definition at line 40 of file STK_StaticAssert.h.
#define STK_SINGLE_ARG3 | ( | A, | |
B, | |||
C | |||
) | A,B,C |
Definition at line 41 of file STK_StaticAssert.h.
#define STK_SINGLE_ARG4 | ( | A, | |
B, | |||
C, | |||
D | |||
) | A,B,C,D |
Definition at line 42 of file STK_StaticAssert.h.
#define STK_SINGLE_ARG5 | ( | A, | |
B, | |||
C, | |||
D, | |||
E | |||
) | A,B,C,D,E |
Definition at line 43 of file STK_StaticAssert.h.
#define STK_STATIC_ASSERT | ( | COND, | |
MSG | |||
) | if (STK::StaticAssert<COND>::MSG) {} |
Definition at line 95 of file STK_StaticAssert.h.
#define STK_STATIC_ASSERT_BINARY_OPERATOR_DIMENSIONS_MISMATCH | ( | COND | ) | STK_STATIC_ASSERT(COND,YOU_TRIED_TO_APPLY_A_BINARY_OPERATOR_WITH_WRONG_DIMENSIONS_SIZE) |
Definition at line 130 of file STK_StaticAssert.h.
#define STK_STATIC_ASSERT_BINARY_OPERATOR_MISMATCH | ( | COND | ) | STK_STATIC_ASSERT(COND,YOU_TRIED_TO_APPLY_A_BINARY_OPERATOR_BETWEEN_NOT_COMPATIBLE_ARRAYS) |
Definition at line 133 of file STK_StaticAssert.h.
#define STK_STATIC_ASSERT_COLS_DIMENSIONS_MISMATCH | ( | COND | ) | STK_STATIC_ASSERT(COND,YOU_TRIED_TO_APPLY_A_BINARY_OPERATOR_WITH_WRONG_COLS_SIZE) |
Definition at line 127 of file STK_StaticAssert.h.
#define STK_STATIC_ASSERT_DENSE_ONLY | ( | EXPR | ) |
Definition at line 162 of file STK_StaticAssert.h.
#define STK_STATIC_ASSERT_DIMENSIONS_MISMATCH | ( | COND | ) | STK_STATIC_ASSERT(COND,YOU_TRIED_TO_APPLY_A_METHOD_BETWEEN_NOT_COMPATIBLE_ARRAYS) |
Definition at line 109 of file STK_StaticAssert.h.
#define STK_STATIC_ASSERT_ONE_DIMENSION_ONLY | ( | EXPR | ) |
Definition at line 151 of file STK_StaticAssert.h.
#define STK_STATIC_ASSERT_POINT_ONLY | ( | EXPR | ) |
Definition at line 166 of file STK_StaticAssert.h.
#define STK_STATIC_ASSERT_POINT_OR_VECTOR_ONLY | ( | EXPR | ) |
Definition at line 174 of file STK_StaticAssert.h.
#define STK_STATIC_ASSERT_POINT_SIZEROWS_MISMATCH | ( | COND | ) | STK_STATIC_ASSERT(COND,YOU_TRIED_TO_CONSTRUCT_A_POINT_WITH_MORE_THAN_ONE_ROW) |
Definition at line 118 of file STK_StaticAssert.h.
#define STK_STATIC_ASSERT_PRODUCT_OPERATOR_MISMATCH | ( | COND | ) | STK_STATIC_ASSERT(COND,YOU_TRIED_TO_APPLY_A_PRODUCT_OPERATOR_BETWEEN_NOT_COMPATIBLE_ARRAYS) |
Definition at line 136 of file STK_StaticAssert.h.
#define STK_STATIC_ASSERT_ROWS_DIMENSIONS_MISMATCH | ( | COND | ) | STK_STATIC_ASSERT(COND,YOU_TRIED_TO_APPLY_A_BINARY_OPERATOR_WITH_WRONG_ROWS_SIZE) |
Definition at line 124 of file STK_StaticAssert.h.
#define STK_STATIC_ASSERT_SAME_ORIENT | ( | LHS, | |
RHS | |||
) |
Definition at line 158 of file STK_StaticAssert.h.
#define STK_STATIC_ASSERT_SAME_ORIENTATION | ( | COND | ) | STK_STATIC_ASSERT(COND,YOU_TRIED_TO_CONSTRUCT_A_REFERENCE_WITH_A_DIFFERENT_ORIENTATION) |
Definition at line 106 of file STK_StaticAssert.h.
#define STK_STATIC_ASSERT_SCALAR_SIZE_MISMATCH | ( | COND | ) | STK_STATIC_ASSERT(COND,YOU_TRIED_TO_CONSTRUCT_A_SCALAR_WITH_MORE_THAN_ONE_ROW_OR_ONE_COLUMN) |
Definition at line 121 of file STK_StaticAssert.h.
#define STK_STATIC_ASSERT_SQUARE_SIZES_MISMATCH | ( | COND | ) | STK_STATIC_ASSERT(COND,YOU_TRIED_TO_CONSTRUCT_A_SQUAREMATRIX_WITH_DIFFERENT_DIMENSIONS) |
Definition at line 112 of file STK_StaticAssert.h.
#define STK_STATIC_ASSERT_TWO_DIMENSIONS_ONLY | ( | EXPR | ) |
Definition at line 139 of file STK_StaticAssert.h.
#define STK_STATIC_ASSERT_VECTOR_ONLY | ( | EXPR | ) |
Definition at line 170 of file STK_StaticAssert.h.
#define STK_STATIC_ASSERT_VECTOR_SIZECOLS_MISMATCH | ( | COND | ) | STK_STATIC_ASSERT(COND,YOU_TRIED_TO_CONSTRUCT_A_VECTOR_WITH_MORE_THAN_ONE_COLUM) |
Definition at line 115 of file STK_StaticAssert.h.
#define STK_STATIC_ASSERT_ZERO_DIMENSION_ONLY | ( | EXPR | ) |
Definition at line 179 of file STK_StaticAssert.h.