#include <ExpTmp.h>
Public Types | |
typedef IF< IsRootNode==int(true), TarConType, typename Exp::temp_type >::RET | temp_type |
The container type of this temporary. | |
typedef IF< IsCLeaf, LeafeNode< typename Exp::super_type >, typename IF< IsCUna, TmpAnalyserUnaNode< typename Exp::super_type, TmpList, TarConType, ForceUseTmp >, TmpAnalyserBinNode< typename Exp::super_type, TmpList, TarConType, ForceUseTmp > >::RET >::RET | child |
The child node. | |
typedef IF< NeedTmp_, temp_type, Mat< typename RefillUnaExp< typename Exp::rep_type, typename child::node_exp::rep_type, typename Exp::extra_param_type >::RET, EmptyErrorChecker > >::RET | node_exp |
typedef IF< NeedTmp_, CRed_list, cTL >::RET | tmp_list |
The temporary list computed down to this node from the root. | |
enum | { IsCBin = IsDerivedFrom<typename Exp::super_type , IsCUna = IsDerivedFrom<typename Exp::super_type , IsCLeaf = (!IsCBin && !IsCUna), CNeedTmp = false, IsDynamicTmp = (Exp::ROWS == 0) || (Exp::COLS == 0) } |
Static Public Member Functions | |
template<class Tag> | |
static void | print (Tag) |
Print information, static debugging. | |
template<class TInst, class TargetCon, class TarConIndex> | |
static void | ass_root (const Exp &exp, TInst &tmpInst, TargetCon &tCon, TarConIndex) |
The root function that will called directly from parseExp_inner. | |
getNodeObj | |
Create a node object | |
template<class TInst, class TargetCon, class TarConIndex> | |
static const node_exp & | getNodeObj (const Exp &exp, TInst &tmpInst, TargetCon &tCon, Int2Type< 0+2 *1 >, TarConIndex) |
Create an unary tmp node. | |
template<class TInst, class TargetCon, class TarConIndex> | |
static const node_exp | getNodeObj (const Exp &exp, TInst &tmpInst, TargetCon &tCon, Int2Type< 0+2 *0 >, TarConIndex) |
Create an unary tmp node. |
TmpAnalyserUnaNode is the main class that do the temporary analysis on an expression. It represent a unary node in the expression tree.
|
The expression type of this node after analysis
|
|
|