10 #include <smet/Reference.hpp> 11 #include <smet/NnarySmET.hpp> 12 #include <tens/TensKind.hpp> 13 #include <tens/TensClass.hpp> 21 template <
typename..._Refs>
24 public NnarySmET<MulAdder<_Refs...>>,
25 public ConstrainAreSmETs<_Refs...>
37 template <
typename Fact1,
40 static DECLAUTO representativeFunction(Fact1&& fact1,
44 return fact1*fact2+addend;
74 namespace CheckMulAdderIsNnarySmet
#define PROVIDE_NNARY_GET_MERGED_COMPS_VIEW_ACCORDING_TO_REPRESENTATIVE_FUNCTION
Uses the representativeFunction to provide a merged view.
#define EVAL_THROUGH_REPRESENTATIVE_FUNCTION_PASSING_COMPS_BY_NAME
Provides an evaluator through a representative function.
#define PROVIDE_POS_OF_RES_TCS_IN_REFS
Provide the position of result Tk TensComp in each input.
#define PROVIDE_TK(...)
Provides the Tk member.
#define PROVIDE_MERGEABLE_COMPS_ACCORDING_TO_REFS_AND_EXTRA
Provide MergeableComps delimiter according to references and extra.
#define NO_EXTRA_MERGE_DELIMS
Add an empty ExtraDelims.
#define PROVIDE_SIMPLE_NNARY_COMP_SIZE
#define FORWARD_IS_ALIASING_TO_REFS
#define PROVIDE_NNARY_SMET_SIMPLE_CREATOR(NNARY_SMET)
Defines a simple creator taking n references.
#define STATIC_ASSERT_IS_NNARY_SMET(...)
Defines the check for a Nnary SmET.
#define NOT_STORING
Set the SmET to not-storing.
#define PROVIDE_FUND_ACCORDING_TO_REPRESENTATIVE_FUNCTION
Defines the Fund type using the call to representativeFunction.
#define DECLAUTO
Short name for decltype(auto)
#define SIMPLE_NNARY_SMET_BUILDER(BUILDER,NNARY_SMET)
#define PROVIDE_NNARY_SMET_REFS_AND_CHECK_ARE_N(N)
#define DEFINE_BASE_TYPE(TYPE,...)