#include <simpleprocess.h>
Inheritance diagram for SimpleProcess:
Public Member Functions | |
SimpleProcess (SrcPosition *position, Identifier *identifier, Declaration *declaration, Action *action, bool server) | |
SimpleProcess (const SimpleProcess &simpleProcess) | |
virtual | ~SimpleProcess () |
Identifier * | getIdentifier () |
Declaration * | getDeclaration () |
Action * | getAction () |
bool | isServer () const |
virtual Ast & | operator= (const Ast &ast) |
virtual bool | operator== (const Ast &ast) const |
virtual VisitorReturn * | visit (Visitor &visitor) |
virtual Ast & | clone () const |
Private Attributes | |
Identifier * | identifier |
Declaration * | declaration |
Action * | action |
bool | server |
|
Definition at line 17 of file simpleprocess.h. Referenced by clone().
00018 : Process(position), identifier(identifier), declaration(declaration), action(action), server(server) {} |
|
Definition at line 20 of file simpleprocess.h. References Ast::position.
|
|
Definition at line 24 of file simpleprocess.h.
00024 { 00025 delete this->identifier; 00026 delete this->declaration; 00027 delete this->action; 00028 } |
|
Implements Ast. Definition at line 53 of file simpleprocess.h. References Ast::clone(), and SimpleProcess(). Referenced by SequentialProcess::clone(), and SequentialProcess::operator=().
00053 { 00054 return *(new SimpleProcess(new SrcPosition(*(this->position)), 00055 this->identifier ? dynamic_cast<Identifier*>(&(this->identifier->clone())) : 0, 00056 this->declaration ? dynamic_cast<Declaration*>(&(this->declaration->clone())) : 0, 00057 this->action ? dynamic_cast<Action*>(&(this->action->clone())) : 0, this->server)); 00058 } |
|
Definition at line 38 of file simpleprocess.h. Referenced by TypeCheckerVisitor::visitSimpleProcess().
00038 { 00039 return this->action; 00040 } |
|
Definition at line 34 of file simpleprocess.h. Referenced by TypeCheckerVisitor::visitSimpleProcess().
00034 { 00035 return this->declaration; 00036 } |
|
Definition at line 30 of file simpleprocess.h. Referenced by TypeCheckerVisitor::visitSimpleProcess().
00030 { 00031 return this->identifier; 00032 } |
|
Definition at line 42 of file simpleprocess.h.
00042 { 00043 return this->server; 00044 } |
|
Reimplemented from Process. Definition at line 5 of file simpleprocess.cpp. References action, Ast::clone(), Identifier::clone(), declaration, identifier, Process::operator=(), and server.
00005 { 00006 const SimpleProcess& simpleProcess = dynamic_cast<const SimpleProcess&>(ast); 00007 00008 Process::operator=(ast); 00009 this->identifier = simpleProcess.identifier ? dynamic_cast<Identifier*>(&(simpleProcess.identifier->clone())) : 0; 00010 this->declaration = simpleProcess.declaration ? dynamic_cast<Declaration*>(&(simpleProcess.declaration->clone())) : 0; 00011 this->action = simpleProcess.action ? dynamic_cast<Action*>(&(simpleProcess.action->clone())) : 0; 00012 this->server = simpleProcess.server; 00013 00014 return *(this); 00015 } |
|
Reimplemented from Process. Definition at line 17 of file simpleprocess.cpp. References action, declaration, identifier, Process::operator==(), and server.
00017 { 00018 bool result = false; 00019 const SimpleProcess& simpleProcess = dynamic_cast<const SimpleProcess&>(ast); 00020 00021 if (typeid(ast) != typeid(SimpleProcess)) 00022 return false; 00023 00024 if (this->identifier && this->declaration && this->action) 00025 result = (*(this->identifier) == *(simpleProcess.identifier) && 00026 *(this->declaration) == *(simpleProcess.declaration) && 00027 *(this->action) == *(simpleProcess.action) && 00028 this->server == simpleProcess.server); 00029 00030 return result && Process::operator==(ast); 00031 } |
|
Implements Ast. Definition at line 49 of file simpleprocess.h. References Visitor::visitSimpleProcess(). Referenced by TypeCheckerVisitor::visitSequentialProcess().
00049 { 00050 return visitor.visitSimpleProcess(this); 00051 } |
|
Definition at line 13 of file simpleprocess.h. Referenced by operator=(), and operator==(). |
|
Definition at line 12 of file simpleprocess.h. Referenced by operator=(), and operator==(). |
|
Definition at line 11 of file simpleprocess.h. Referenced by operator=(), and operator==(). |
|
Definition at line 14 of file simpleprocess.h. Referenced by operator=(), and operator==(). |