#include <fieldreference.h>
Inheritance diagram for FieldReference:
Public Member Functions | |
FieldReference (SrcPosition *position, Identifier *msgId, Identifier *fieldId) | |
FieldReference (const FieldReference &fieldReference) | |
virtual | ~FieldReference () |
Identifier * | getMsgId () |
Identifier * | getFieldId () |
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 * | msgId |
Identifier * | fieldId |
|
Definition at line 15 of file fieldreference.h. Referenced by clone().
00016 : Expression(position), LeftSide(position), Ast(position), msgId(msgId), fieldId(fieldId) {} |
|
Definition at line 18 of file fieldreference.h. References Ast::position.
00018 : Expression(fieldReference.position), LeftSide(fieldReference.position), Ast(position) { 00019 (*this) = fieldReference; 00020 } |
|
Definition at line 22 of file fieldreference.h.
|
|
Implements Ast. Definition at line 43 of file fieldreference.h. References Identifier::clone(), and FieldReference().
00043 { 00044 return *(new FieldReference(new SrcPosition(*(this->position)), 00045 this->msgId ? dynamic_cast<Identifier*>(&(this->msgId->clone())): 0, 00046 this->fieldId ? dynamic_cast<Identifier*>(&(this->fieldId->clone())): 0)); 00047 } |
|
Definition at line 31 of file fieldreference.h. Referenced by TypeCheckerVisitor::visitFieldReference().
00031 { 00032 return this->fieldId; 00033 } |
|
Definition at line 27 of file fieldreference.h. Referenced by TypeCheckerVisitor::visitFieldReference().
00027 { 00028 return this->msgId; 00029 } |
|
Reimplemented from Expression. Definition at line 3 of file fieldreference.cpp. References Identifier::clone(), fieldId, msgId, and Expression::operator=().
00003 { 00004 const FieldReference& fieldReference = dynamic_cast<const FieldReference&>(ast); 00005 00006 Expression::operator=(ast); 00007 00008 this->msgId = fieldReference.msgId ? dynamic_cast<Identifier*>(&(fieldReference.msgId->clone())) : 0; 00009 this->fieldId = fieldReference.fieldId ? dynamic_cast<Identifier*>(&(fieldReference.fieldId->clone())): 0; 00010 00011 return (*this); 00012 } |
|
Reimplemented from Expression. Definition at line 14 of file fieldreference.cpp. References fieldId, msgId, and Expression::operator==().
00014 { 00015 const FieldReference& fieldReference = dynamic_cast<const FieldReference&>(ast); 00016 00017 bool result = false; 00018 if(this->msgId && this->fieldId) { 00019 result = (*(this->msgId) == *(fieldReference.msgId) && 00020 *(this->fieldId) == *(fieldReference.fieldId)); 00021 } 00022 00023 return result && Expression::operator==(ast); 00024 } |
|
Implements Ast. Definition at line 39 of file fieldreference.h. References Visitor::visitFieldReference().
00039 { 00040 return visitor.visitFieldReference(this); 00041 } |
|
Definition at line 12 of file fieldreference.h. Referenced by operator=(), and operator==(). |
|
Definition at line 11 of file fieldreference.h. Referenced by operator=(), and operator==(). |