Expressions¶
C++ classes, functions and namespaces to handle mathematical expressions.
|
Namespace tags |
|
Class expr_base |
|
Class cst_expr_base |
|
Class batch_expr_impl |
|
Class unary_op_expr_impl |
|
Class binary_op_expr_impl |
|
Class eval_visitor |
Namespaces¶
Namespace containing all known tags.
- #include <xsimd_fallback.hpp>
Tag for the “add” operation.
- #include <xsimd_fallback.hpp>
Tag for batch values.
- #include <xsimd_fallback.hpp>
Tag for constant values.
- #include <xsimd_fallback.hpp>
Tag for the “division” operation.
- #include <xsimd_fallback.hpp>
Tag for the “logical and” operation.
- #include <xsimd_fallback.hpp>
Tag for the “logical not” operation.
- #include <xsimd_fallback.hpp>
Tag for the “logical or” operation.
- #include <xsimd_fallback.hpp>
Tag for the “logical xor” operation.
- #include <xsimd_fallback.hpp>
Tag for the “multiplication” operation.
- #include <xsimd_fallback.hpp>
Tag for the “negate” operation.
- #include <xsimd_fallback.hpp>
Tag for the “subtraction” operation.
- #include <xsimd_fallback.hpp>
Classes¶
-
template<typename
derived_t
>
classexpr_base
¶ Base class for all expressions.
- Template Parameters
derived_t
: CRTP derived type
-
template<typename
T
>
classcst_expr_impl
: public xsimd::expr_base<cst_expr_impl<T>>¶ Expression class encapsulating an arithmetic value.
- Template Parameters
T
: Underlying arithmetic type
-
template<typename
T
, std::size_tN
>
classbatch_expr_impl
: public xsimd::expr_base<batch_expr_impl<T, N>>¶ Expression class encapsulating a batch<T, N> value.
- Template Parameters
T
: Underlying arithmetic typeN
: Number of values within a batch
-
template<typename
T
, typenametag_type
>
classunary_op_expr_impl
: public xsimd::expr_base<unary_op_expr_impl<T, tag_type>>¶ Expression class encapsulating an unary expression.
- Template Parameters
T
: Type of the RHStag_type
: Tag class for that expression
-
template<typename
T
, typenameU
, typenametag_type
>
classbinary_op_expr_impl
: public xsimd::expr_base<binary_op_expr_impl<T, U, tag_type>>¶ Expression class encapsulating a binary operators.
- Template Parameters
T
: Type of the LHSU
: Type of the RHStag_type
: Tag class for that expression
-
class
eval_visitor
¶ Expression evaluator class.
Visitor class to evaluate an expression given an index
Public Functions
-
constexpr
eval_visitor
(std::size_t idx)¶ Constructor.
- Parameters
idx
: Index of value within expression
Call operator for constant values.
Call operator for batch values.
Call operator for logical not operations.
Call operator for logical and operations.
Call operator for logical or operations.
Call operator for logical xor operations.
Call operator for negation operations.
Call operator for addition operations.
Call operator for subtraction operations.
Call operator for multiplication operations.
Call operator for division operations.
-
constexpr