Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

UTAP::TypeChecker Class Reference

A visitor which type checks the system it visits. More...

#include <typechecker.h>

Inheritance diagram for UTAP::TypeChecker:

UTAP::ContextVisitor UTAP::StatementVisitor UTAP::SystemVisitor UTAP::XPath List of all members.

Public Member Functions

 TypeChecker (TimedAutomataSystem *system, ErrorHandler *handler)
virtual ~TypeChecker ()
virtual void visitVariable (variable_t &)
virtual void visitState (state_t &)
virtual void visitEdge (edge_t &)
virtual void visitInstance (instance_t &)
virtual void visitProperty (expression_t)
virtual void visitFunction (function_t &)
virtual int32_t visitEmptyStatement (EmptyStatement *stat)
virtual int32_t visitExprStatement (ExprStatement *stat)
virtual int32_t visitForStatement (ForStatement *stat)
virtual int32_t visitWhileStatement (WhileStatement *stat)
virtual int32_t visitDoWhileStatement (DoWhileStatement *stat)
virtual int32_t visitBlockStatement (BlockStatement *stat)
virtual int32_t visitSwitchStatement (SwitchStatement *stat)
virtual int32_t visitCaseStatement (CaseStatement *stat)
virtual int32_t visitDefaultStatement (DefaultStatement *stat)
virtual int32_t visitIfStatement (IfStatement *stat)
virtual int32_t visitBreakStatement (BreakStatement *stat)
virtual int32_t visitContinueStatement (ContinueStatement *stat)
virtual int32_t visitReturnStatement (ReturnStatement *stat)
void checkExpression (expression_t)
 Type check an expression.

Static Public Member Functions

static bool isVoid (expression_t)
static bool isInteger (expression_t)
static bool isClock (expression_t)
static bool isRecord (expression_t)
static bool isDiff (expression_t)
static bool isInvariant (expression_t)
 Returns true iff type is a valid invariant.
static bool isGuard (expression_t)
 Returns true iff type is a valid guard.
static bool isConstraint (expression_t)
 Returns true iff type is a valid constraint.

Detailed Description

A visitor which type checks the system it visits.

The type checker can only visit the system given in the constructor. The type checker must not be constructed before the system has been parsed.


Constructor & Destructor Documentation

TypeChecker::TypeChecker TimedAutomataSystem system,
ErrorHandler handler
 

virtual UTAP::TypeChecker::~TypeChecker  )  [inline, virtual]
 


Member Function Documentation

void TypeChecker::checkExpression expression_t   ) 
 

Type check an expression.

bool TypeChecker::isClock expression_t   )  [static]
 

bool TypeChecker::isConstraint expression_t  expr  )  [static]
 

Returns true iff type is a valid constraint.

A valid constraint is either a valid guard or a constraint expression.

bool TypeChecker::isDiff expression_t   )  [static]
 

bool TypeChecker::isGuard expression_t  expr  )  [static]
 

Returns true iff type is a valid guard.

A valid guard is either a valid invariant or a guard expression.

bool TypeChecker::isInteger expression_t   )  [static]
 

bool TypeChecker::isInvariant expression_t  expr  )  [static]
 

Returns true iff type is a valid invariant.

A valid invariant is either an invariant expression or an integer expression.

bool TypeChecker::isRecord expression_t   )  [static]
 

bool TypeChecker::isVoid expression_t   )  [static]
 

int32_t TypeChecker::visitBlockStatement BlockStatement stat  )  [virtual]
 

Implements UTAP::StatementVisitor.

int32_t TypeChecker::visitBreakStatement BreakStatement stat  )  [virtual]
 

Implements UTAP::StatementVisitor.

int32_t TypeChecker::visitCaseStatement CaseStatement stat  )  [virtual]
 

Implements UTAP::StatementVisitor.

int32_t TypeChecker::visitContinueStatement ContinueStatement stat  )  [virtual]
 

Implements UTAP::StatementVisitor.

int32_t TypeChecker::visitDefaultStatement DefaultStatement stat  )  [virtual]
 

Implements UTAP::StatementVisitor.

int32_t TypeChecker::visitDoWhileStatement DoWhileStatement stat  )  [virtual]
 

Implements UTAP::StatementVisitor.

void TypeChecker::visitEdge edge_t  )  [virtual]
 

Reimplemented from UTAP::SystemVisitor.

int32_t TypeChecker::visitEmptyStatement EmptyStatement stat  )  [virtual]
 

Implements UTAP::StatementVisitor.

int32_t TypeChecker::visitExprStatement ExprStatement stat  )  [virtual]
 

Implements UTAP::StatementVisitor.

int32_t TypeChecker::visitForStatement ForStatement stat  )  [virtual]
 

Implements UTAP::StatementVisitor.

void TypeChecker::visitFunction function_t  )  [virtual]
 

Reimplemented from UTAP::SystemVisitor.

int32_t TypeChecker::visitIfStatement IfStatement stat  )  [virtual]
 

Implements UTAP::StatementVisitor.

void TypeChecker::visitInstance instance_t  )  [virtual]
 

Reimplemented from UTAP::SystemVisitor.

void TypeChecker::visitProperty expression_t   )  [virtual]
 

int32_t TypeChecker::visitReturnStatement ReturnStatement stat  )  [virtual]
 

Implements UTAP::StatementVisitor.

void TypeChecker::visitState state_t  )  [virtual]
 

Reimplemented from UTAP::SystemVisitor.

int32_t TypeChecker::visitSwitchStatement SwitchStatement stat  )  [virtual]
 

Implements UTAP::StatementVisitor.

void TypeChecker::visitVariable variable_t  )  [virtual]
 

Reimplemented from UTAP::SystemVisitor.

int32_t TypeChecker::visitWhileStatement WhileStatement stat  )  [virtual]
 

Implements UTAP::StatementVisitor.


The documentation for this class was generated from the following files:
Generated on Thu Feb 17 15:20:59 2005 for libutap by  doxygen 1.4.1