C-Breeze
C Compiler Infrastructure

[ Project home page]

UnifyType Class Reference

#include <unification.h>

List of all members.

Public Member Functions

 UnifyType ()
 UnifyType (Unify_Simple *s)
 UnifyType (Unify_Structure *s)
 UnifyType (Unify_Object *o)
 UnifyType (Unify_Blank *b)
 UnifyType (Unify_Blank *b, Unify_ECR *ecr)
Unify_ECR * ecr () const
Unify_ECR * ecr_no_root () const
void ecr (Unify_ECR *ecr)
bool is_bottom () const
int id () const
Object_Typ objTyp () const
memoryBlock * block () const
void block (memoryBlock *b)
set< procNode * > & procs ()
Unify_Simple * simple () const
Unify_Structure * structure () const
Unify_Object * object () const
Unify_Blank * blank () const
bool leq (UnifyType *o, Unify_Size s) const
Unify_Size size () const
void print () const

Static Public Member Functions

static UnifyType * toTao (UnifyType *t)
static UnifyType * bottom ()

Private Attributes

Unify_ECR * _ecr
int _id
union {
   Unify_Simple *   simple
   Unify_Structure *   structure
   Unify_Object *   object
   Unify_Blank *   blank
} _tao
Object_Typ obj_typ
memoryBlock * _block
set< procNode * > _procs
bool _is_bottom

Static Private Attributes

static int id_count

Friends

ostream & operator<< (ostream &o, const UnifyType &t)


Constructor & Destructor Documentation

UnifyType::UnifyType (   )  [inline]
 

Definition at line 286 of file unification.h.

References _ecr.

Referenced by bottom().

UnifyType::UnifyType (  Unify_Simple *  s  )  [inline]
 

Definition at line 288 of file unification.h.

References _block, _ecr, and _tao.

UnifyType::UnifyType (  Unify_Structure *  s  )  [inline]
 

Definition at line 290 of file unification.h.

References _ecr, and _tao.

UnifyType::UnifyType (  Unify_Object *  o  )  [inline]
 

Definition at line 292 of file unification.h.

References _block, _ecr, and _tao.

UnifyType::UnifyType (  Unify_Blank *  b  )  [inline]
 

Definition at line 294 of file unification.h.

References _block, _ecr, and _tao.

UnifyType::UnifyType (  Unify_Blank *  b,
Unify_ECR *  ecr
)  [inline]
 

Definition at line 296 of file unification.h.

References _block, _ecr, and _tao.


Member Function Documentation

Unify_Blank* UnifyType::blank (   )  const [inline]
 

Definition at line 315 of file unification.h.

References _tao, BLANK, and obj_typ.

void UnifyType::block (  memoryBlock *  b  )  [inline]
 

Definition at line 306 of file unification.h.

References _block.

memoryBlock* UnifyType::block (   )  const [inline]
 

Definition at line 305 of file unification.h.

References _block.

static UnifyType* UnifyType::bottom (   )  [inline, static]
 

Definition at line 327 of file unification.h.

References UnifyType().

void UnifyType::ecr (  Unify_ECR *  ecr  )  [inline]
 

Definition at line 301 of file unification.h.

References _ecr.

Unify_ECR* UnifyType::ecr (   )  const [inline]
 

Definition at line 299 of file unification.h.

References _ecr, and Unify_ECR::root().

Unify_ECR* UnifyType::ecr_no_root (   )  const [inline]
 

Definition at line 300 of file unification.h.

References _ecr.

int UnifyType::id (   )  const [inline]
 

Definition at line 303 of file unification.h.

References _id.

bool UnifyType::is_bottom (   )  const [inline]
 

Definition at line 302 of file unification.h.

References _is_bottom.

bool UnifyType::leq (  UnifyType *  o,
Unify_Size  s
)  const [inline]
 

Definition at line 318 of file unification.h.

References Unify_Size::leq(), and size().

Unify_Object* UnifyType::object (   )  const [inline]
 

Definition at line 313 of file unification.h.

References _tao, obj_typ, and OBJECT.

Object_Typ UnifyType::objTyp (   )  const [inline]
 

Definition at line 304 of file unification.h.

References obj_typ.

void UnifyType::print (   )  const
 

set<procNode*>& UnifyType::procs (   )  [inline]
 

Definition at line 307 of file unification.h.

References _procs.

Unify_Simple* UnifyType::simple (   )  const [inline]
 

Definition at line 309 of file unification.h.

References _tao, obj_typ, and SIMPLE.

Unify_Size UnifyType::size (   )  const
 

Referenced by leq().

Unify_Structure* UnifyType::structure (   )  const [inline]
 

Definition at line 311 of file unification.h.

References _tao, obj_typ, and STRUCTURE.

static UnifyType* UnifyType::toTao (  UnifyType *  t  )  [static]
 


Friends And Related Function Documentation

ostream& operator<< (  ostream &  o,
const UnifyType &  t
)  [friend]
 

Definition at line 322 of file unification.h.


Member Data Documentation

memoryBlock* UnifyType::_block [private]
 

Definition at line 280 of file unification.h.

Referenced by block(), and UnifyType().

Unify_ECR* UnifyType::_ecr [private]
 

Definition at line 270 of file unification.h.

Referenced by ecr(), ecr_no_root(), and UnifyType().

int UnifyType::_id [private]
 

Definition at line 271 of file unification.h.

Referenced by id().

bool UnifyType::_is_bottom [private]
 

Definition at line 283 of file unification.h.

Referenced by is_bottom().

set<procNode*> UnifyType::_procs [private]
 

Definition at line 281 of file unification.h.

Referenced by procs().

union { ... } UnifyType::_tao [private]
 

Referenced by blank(), object(), simple(), structure(), and UnifyType().

Unify_Blank* UnifyType::blank [private]
 

Definition at line 277 of file unification.h.

int UnifyType::id_count [static, private]
 

Definition at line 272 of file unification.h.

Object_Typ UnifyType::obj_typ [private]
 

Definition at line 279 of file unification.h.

Referenced by blank(), object(), objTyp(), simple(), and structure().

Unify_Object* UnifyType::object [private]
 

Definition at line 276 of file unification.h.

Unify_Simple* UnifyType::simple [private]
 

Definition at line 274 of file unification.h.

Unify_Structure* UnifyType::structure [private]
 

Definition at line 275 of file unification.h.


The documentation for this class was generated from the following file:

Generated on February 1, 2006
Back to the C-Breeze home page