Go to the documentation of this file.
37 #ifndef expressions_exprTraits_H
38 #define expressions_exprTraits_H
105 static constexpr
const char*
const name =
"";
112 #undef defineExprTypeTraits
113 #define defineExprTypeTraits(Type, Name) \
115 struct exprTypeTraits<Type> \
117 typedef Type value_type; \
118 static constexpr const char* const name = #Name; \
120 ::Foam::expressions::valueTypeCode value = \
121 ::Foam::expressions::valueTypeCode::type_##Name; \
134 #undef defineExprTypeTraits
Invalid/unknown/error type.
No type, or default initialized type.
A class for handling words, derived from Foam::string.
valueTypeCode
An enumeration of known and expected expression value types.
Extract name (as a word) from an object, typically using its name() method.
Type is 'sphericalTensor'.
word operator()(const T &obj) const
word operator()(const expressions::valueTypeCode typeCode) const
static constexpr const char *const name
valueTypeCode valueTypeCodeOf(const word &dataTypeName)
From string to valueTypeCode (if any)
static constexpr ::Foam::expressions::valueTypeCode value
#define defineExprTypeTraits(Type, Name)
Simple type identifiers for polymorphic expression values.
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for INVALID.