Nektar++
|
#include <boost/preprocessor/repetition/enum_binary_params.hpp>
#include <boost/preprocessor/control/expr_if.hpp>
#include <boost/preprocessor/repetition/enum_trailing_binary_params.hpp>
#include <boost/preprocessor/control/if.hpp>
#include <boost/preprocessor/logical/and.hpp>
#include <boost/preprocessor/logical/or.hpp>
#include <boost/preprocessor/comparison/greater.hpp>
#include <boost/preprocessor/repetition/enum_params.hpp>
#include <boost/preprocessor/stringize.hpp>
#include <boost/preprocessor/tuple/eat.hpp>
#include <ExpressionTemplates/Operators.hpp>
Go to the source code of this file.
Namespaces | |
Nektar | |
< | |
Macros | |
#define | TEMPLATE() template< |
#define | CLOSE_TEMPLATE() > |
#define | NEKTAR_TYPENAME() typename |
#define | SHOW_TYPENAME(LhsNumber, RhsNumber) BOOST_PP_IF( BOOST_PP_OR(BOOST_PP_GREATER(LhsNumber,0), BOOST_PP_GREATER(RhsNumber,0)), NEKTAR_TYPENAME, BOOST_PP_EMPTY)() |
#define | PP_ENUM_TWO_SETS_OF_TYPES(LhsTypeName, LhsNumber, RhsTypeName, RhsNumber) |
#define | GET_TEMPLATED_TYPE(TypeName, TemplateTypeName, Number) TypeName<BOOST_PP_ENUM_PARAMS(Number, TemplateTypeName)> |
#define | GET_TYPE(TypeName, TemplateTypeName, Number) BOOST_PP_IF(BOOST_PP_GREATER(Number, 0), GET_TEMPLATED_TYPE, TypeName BOOST_PP_TUPLE_EAT(3))(TypeName, TemplateTypeName, Number) |
#define | DECLARE_MULTIPLICATION_OPERATOR(LeftType, NumLeftParams, RightType, NumRightParams) |
#define | DECLARE_DIVISION_OPERATOR(LeftType, NumLeftParams, RightType, NumRightParams) |
#define | DECLARE_ADDITION_OPERATOR(LeftType, NumLeftParams, RightType, NumRightParams) |
#define | DECLARE_SUBTRACTION_OPERATOR(LeftType, NumLeftParams, RightType, NumRightParams) |
#define | GENERATE_MULTIPLICATION_OPERATOR(LeftType, NumLeftParams, RightType, NumRightParams) |
#define | GENERATE_DIVISION_OPERATOR(LeftType, NumLeftParams, RightType, NumRightParams) |
#define | GENERATE_ADDITION_OPERATOR(LeftType, NumLeftParams, RightType, NumRightParams) |
#define | GENERATE_SUBTRACTION_OPERATOR(LeftType, NumLeftParams, RightType, NumRightParams) |
#define CLOSE_TEMPLATE | ( | ) | > |
Definition at line 62 of file OperatorGenerators.hpp.
#define DECLARE_ADDITION_OPERATOR | ( | LeftType, | |
NumLeftParams, | |||
RightType, | |||
NumRightParams | |||
) |
Definition at line 92 of file OperatorGenerators.hpp.
#define DECLARE_DIVISION_OPERATOR | ( | LeftType, | |
NumLeftParams, | |||
RightType, | |||
NumRightParams | |||
) |
Definition at line 86 of file OperatorGenerators.hpp.
#define DECLARE_MULTIPLICATION_OPERATOR | ( | LeftType, | |
NumLeftParams, | |||
RightType, | |||
NumRightParams | |||
) |
Definition at line 80 of file OperatorGenerators.hpp.
#define DECLARE_SUBTRACTION_OPERATOR | ( | LeftType, | |
NumLeftParams, | |||
RightType, | |||
NumRightParams | |||
) |
Definition at line 98 of file OperatorGenerators.hpp.
#define GENERATE_ADDITION_OPERATOR | ( | LeftType, | |
NumLeftParams, | |||
RightType, | |||
NumRightParams | |||
) |
Definition at line 162 of file OperatorGenerators.hpp.
#define GENERATE_DIVISION_OPERATOR | ( | LeftType, | |
NumLeftParams, | |||
RightType, | |||
NumRightParams | |||
) |
Definition at line 153 of file OperatorGenerators.hpp.
#define GENERATE_MULTIPLICATION_OPERATOR | ( | LeftType, | |
NumLeftParams, | |||
RightType, | |||
NumRightParams | |||
) |
Definition at line 143 of file OperatorGenerators.hpp.
#define GENERATE_SUBTRACTION_OPERATOR | ( | LeftType, | |
NumLeftParams, | |||
RightType, | |||
NumRightParams | |||
) |
Definition at line 172 of file OperatorGenerators.hpp.
#define GET_TEMPLATED_TYPE | ( | TypeName, | |
TemplateTypeName, | |||
Number | |||
) | TypeName<BOOST_PP_ENUM_PARAMS(Number, TemplateTypeName)> |
Definition at line 75 of file OperatorGenerators.hpp.
#define GET_TYPE | ( | TypeName, | |
TemplateTypeName, | |||
Number | |||
) | BOOST_PP_IF(BOOST_PP_GREATER(Number, 0), GET_TEMPLATED_TYPE, TypeName BOOST_PP_TUPLE_EAT(3))(TypeName, TemplateTypeName, Number) |
Definition at line 77 of file OperatorGenerators.hpp.
#define NEKTAR_TYPENAME | ( | ) | typename |
Definition at line 64 of file OperatorGenerators.hpp.
#define PP_ENUM_TWO_SETS_OF_TYPES | ( | LhsTypeName, | |
LhsNumber, | |||
RhsTypeName, | |||
RhsNumber | |||
) |
Definition at line 68 of file OperatorGenerators.hpp.
#define SHOW_TYPENAME | ( | LhsNumber, | |
RhsNumber | |||
) | BOOST_PP_IF( BOOST_PP_OR(BOOST_PP_GREATER(LhsNumber,0), BOOST_PP_GREATER(RhsNumber,0)), NEKTAR_TYPENAME, BOOST_PP_EMPTY)() |
Definition at line 65 of file OperatorGenerators.hpp.
#define TEMPLATE | ( | ) | template< |
Definition at line 61 of file OperatorGenerators.hpp.