exmat::PNS::AliasAnalyser< Exp > Struct Template Reference

The alias analyzer. More...

#include <AliasAnalyser.h>

List of all members.

Public Types

enum  {
  IsLBinExpNode = IsDerivedFrom<typename exp_type::left_type , IsRBinExpNode = IsDerivedFrom<typename exp_type::right_type , IsLViewNode = IsDerivedFrom<typename exp_type::left_type , IsRViewNode = IsDerivedFrom<typename exp_type::right_type ,
  IsLConNode = (!IsLBinExpNode && !IsLViewNode), IsRConNode = (!IsRBinExpNode && !IsRViewNode), IsViewConNode
}

Static Public Member Functions

template<class LType>
static bool IsAliased (LType &l, const Exp &exp, const Int2Type< true > &, const bool IsNodePathLinear)
 Check l and exp have aliased problem or not. For BinExp node.
template<class LType>
static bool IsAliased (LType &l, const Exp &exp, const Int2Type< false > &, const bool IsNodePathLinear)
 Check l and exp have aliased problem or not. For View node.

Classes

struct  Helper
 Helper class, to defer type initialization. More...


Detailed Description

template<class Exp>
struct exmat::PNS::AliasAnalyser< Exp >

The alias analyzer.


Member Enumeration Documentation

template<class Exp>
anonymous enum
 

Enumerator:
IsLBinExpNode  Is the left child a binexp node?
IsRBinExpNode  Is the right child a binexp node?
IsLViewNode  Is the left child a view node?
IsRViewNode  Is the right child a view node?
IsLConNode  Is the left child a container node?
IsRConNode  Is the right child a container node?
IsViewConNode  Is the view down to a LeafeNode?


The documentation for this struct was generated from the following file:
Generated on Sat May 6 23:12:10 2006 for Exmat by  doxygen 1.4.6-NO