#include <simplemessage.h>
Inheritance diagram for SimpleMessage:
Public Member Functions | |
SimpleMessage (SrcPosition *position, Identifier *identifier, FieldDeclaration *fieldDeclaration, Identifier *handlerIn, Identifier *handlerOut, bool external) | |
SimpleMessage (const SimpleMessage &simpleMessage) | |
virtual | ~SimpleMessage () |
Identifier * | getIdentifier () |
FieldDeclaration * | getFieldDeclaration () |
Identifier * | getHandlerIn () |
Identifier * | getHandlerOut () |
bool | isExternal () 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 |
FieldDeclaration * | fieldDeclaration |
Identifier * | handlerIn |
Identifier * | handlerOut |
bool | external |
|
Definition at line 17 of file simplemessage.h. Referenced by clone().
00019 : Message(position), identifier(identifier), fieldDeclaration(fieldDeclaration), 00020 handlerIn(handlerIn), handlerOut(handlerOut), external(external) {} |
|
Definition at line 22 of file simplemessage.h. References Ast::position.
|
|
Definition at line 26 of file simplemessage.h.
00026 { 00027 delete this->identifier; 00028 delete this->fieldDeclaration; 00029 delete this->handlerIn; 00030 delete this->handlerOut; 00031 } |
|
Implements Ast. Definition at line 60 of file simplemessage.h. References Identifier::clone(), Ast::clone(), and SimpleMessage(). Referenced by SequentialMessage::clone(), and SequentialMessage::operator=().
00060 { 00061 return *(new SimpleMessage(new SrcPosition(*(this->position)), 00062 this->identifier ? dynamic_cast<Identifier*>(&(this->identifier->clone())) : 0, 00063 this->fieldDeclaration ? dynamic_cast<FieldDeclaration*>(&(this->fieldDeclaration->clone())) : 0, 00064 this->handlerIn ? dynamic_cast<Identifier*>(&(this->handlerIn->clone())) : 0, 00065 this->handlerOut ? dynamic_cast<Identifier*>(&(this->handlerOut->clone())) : 0, 00066 this->external)); 00067 } |
|
Definition at line 37 of file simplemessage.h. Referenced by TypeCheckerVisitor::visitSimpleMessage(), and JavaCodeGeneratorVisitor::visitSimpleMessage().
00037 { 00038 return this->fieldDeclaration; 00039 } |
|
Definition at line 41 of file simplemessage.h. Referenced by JavaCodeGeneratorVisitor::visitSimpleMessage().
00041 { 00042 return this->handlerIn; 00043 } |
|
Definition at line 45 of file simplemessage.h. Referenced by JavaCodeGeneratorVisitor::visitSimpleMessage().
00045 { 00046 return this->handlerOut; 00047 } |
|
Definition at line 33 of file simplemessage.h. Referenced by TypeCheckerVisitor::visitFieldType(), TypeCheckerVisitor::visitSimpleFieldDeclaration(), TypeCheckerVisitor::visitSimpleMessage(), and JavaCodeGeneratorVisitor::visitSimpleMessage().
00033 { 00034 return this->identifier; 00035 } |
|
Definition at line 49 of file simplemessage.h.
00049 { 00050 return this->external; 00051 } |
|
Reimplemented from Message. Definition at line 5 of file simplemessage.cpp. References Ast::clone(), Identifier::clone(), external, fieldDeclaration, handlerIn, handlerOut, identifier, and Message::operator=().
00005 { 00006 const SimpleMessage& simpleMessage = dynamic_cast<const SimpleMessage&>(ast); 00007 00008 Message::operator=(ast); 00009 this->identifier = this->identifier ? dynamic_cast<Identifier*>(&(simpleMessage.identifier->clone())) : 0; 00010 this->fieldDeclaration = this->fieldDeclaration ? dynamic_cast<FieldDeclaration*>(&(simpleMessage.fieldDeclaration->clone())) : 0; 00011 this->handlerIn = this->handlerIn ? dynamic_cast<Identifier*>(&(simpleMessage.handlerIn->clone())) : 0; 00012 this->handlerOut = this->handlerOut ? dynamic_cast<Identifier*>(&(simpleMessage.handlerOut->clone())) : 0; 00013 this->external = simpleMessage.external; 00014 00015 return *(this); 00016 } |
|
Reimplemented from Message. Definition at line 18 of file simplemessage.cpp. References external, fieldDeclaration, handlerIn, handlerOut, identifier, and Message::operator==().
00018 { 00019 bool result = false; 00020 const SimpleMessage& simpleMessage = dynamic_cast<const SimpleMessage&>(ast); 00021 00022 if (typeid(ast) != typeid(SimpleMessage)) 00023 return false; 00024 00025 if (this->identifier && this->fieldDeclaration && this->handlerIn && this->handlerOut) 00026 result = (*(this->identifier) == *(simpleMessage.identifier) && 00027 *(this->fieldDeclaration) == *(simpleMessage.fieldDeclaration)) && 00028 *(this->handlerIn) == *(simpleMessage.handlerIn) && 00029 *(this->handlerOut) == *(simpleMessage.handlerOut) && 00030 this->external == simpleMessage.external; 00031 00032 return result && Message::operator==(ast); 00033 } |
|
Implements Ast. Definition at line 56 of file simplemessage.h. References Visitor::visitSimpleMessage(). Referenced by TypeCheckerVisitor::visitSequentialMessage(), and JavaCodeGeneratorVisitor::visitSequentialMessage().
00056 { 00057 return visitor.visitSimpleMessage(this); 00058 } |
|
Definition at line 14 of file simplemessage.h. Referenced by operator=(), and operator==(). |
|
Definition at line 11 of file simplemessage.h. Referenced by operator=(), and operator==(). |
|
Definition at line 12 of file simplemessage.h. Referenced by operator=(), and operator==(). |
|
Definition at line 13 of file simplemessage.h. Referenced by operator=(), and operator==(). |
|
Definition at line 10 of file simplemessage.h. Referenced by operator=(), and operator==(). |