#include <sequentialfielddeclaration.h>
Inheritance diagram for SequentialFieldDeclaration:
Public Member Functions | |
SequentialFieldDeclaration (SrcPosition *position, FieldDeclaration *fieldDeclaration, SimpleFieldDeclaration *simpleFieldDeclaration) | |
SequentialFieldDeclaration (const SequentialFieldDeclaration &sequentialFieldDeclaration) | |
virtual | ~SequentialFieldDeclaration () |
FieldDeclaration * | getFieldDeclaration () |
SimpleFieldDeclaration * | getSimpleFieldDeclaration () |
virtual Ast & | operator= (const Ast &ast) |
virtual bool | operator== (const Ast &ast) const |
virtual VisitorReturn * | visit (Visitor &visitor) |
virtual Ast & | clone () const |
Private Attributes | |
FieldDeclaration * | fieldDeclaration |
SimpleFieldDeclaration * | simpleFieldDeclaration |
|
Definition at line 14 of file sequentialfielddeclaration.h. Referenced by clone().
00015 : FieldDeclaration(position), fieldDeclaration(fieldDeclaration), simpleFieldDeclaration(simpleFieldDeclaration) {} |
|
Definition at line 17 of file sequentialfielddeclaration.h. References Ast::position.
00017 : FieldDeclaration(sequentialFieldDeclaration.position) { 00018 *(this) = sequentialFieldDeclaration; 00019 } |
|
Definition at line 21 of file sequentialfielddeclaration.h.
00021 { 00022 delete this->fieldDeclaration; 00023 delete this->simpleFieldDeclaration; 00024 } |
|
Implements Ast. Definition at line 41 of file sequentialfielddeclaration.h. References SimpleFieldDeclaration::clone(), and SequentialFieldDeclaration().
00041 { 00042 return *(new SequentialFieldDeclaration(new SrcPosition(*(this->position)), 00043 this->fieldDeclaration ? dynamic_cast<FieldDeclaration*>(&(this->fieldDeclaration->clone())) : 0, 00044 this->simpleFieldDeclaration ? dynamic_cast<SimpleFieldDeclaration*>(&(this->simpleFieldDeclaration->clone())) : 0)); 00045 } |
|
Definition at line 26 of file sequentialfielddeclaration.h. Referenced by TypeCheckerVisitor::visitSequentialFieldDeclaration(), and JavaCodeGeneratorVisitor::visitSequentialFieldDeclaration().
00026 { 00027 return this->fieldDeclaration; 00028 } |
|
Definition at line 30 of file sequentialfielddeclaration.h. Referenced by TypeCheckerVisitor::visitSequentialFieldDeclaration(), and JavaCodeGeneratorVisitor::visitSequentialFieldDeclaration().
00030 { 00031 return this->simpleFieldDeclaration; 00032 } |
|
Reimplemented from FieldDeclaration. Definition at line 5 of file sequentialfielddeclaration.cpp. References SimpleFieldDeclaration::clone(), Ast::clone(), fieldDeclaration, FieldDeclaration::operator=(), and simpleFieldDeclaration.
00005 { 00006 const SequentialFieldDeclaration& sequentialFieldDeclaration = dynamic_cast<const SequentialFieldDeclaration&>(ast); 00007 00008 FieldDeclaration::operator=(ast); 00009 this->fieldDeclaration = sequentialFieldDeclaration.fieldDeclaration ? dynamic_cast<FieldDeclaration*>(&(sequentialFieldDeclaration.fieldDeclaration->clone())) : 0; 00010 this->simpleFieldDeclaration = sequentialFieldDeclaration.simpleFieldDeclaration ? dynamic_cast<SimpleFieldDeclaration*>(&(sequentialFieldDeclaration.simpleFieldDeclaration->clone())) : 0; 00011 00012 return *(this); 00013 } |
|
Reimplemented from FieldDeclaration. Definition at line 15 of file sequentialfielddeclaration.cpp. References fieldDeclaration, FieldDeclaration::operator==(), and simpleFieldDeclaration.
00015 { 00016 bool result = false; 00017 const SequentialFieldDeclaration& sequentialFieldDeclaration = dynamic_cast<const SequentialFieldDeclaration&>(ast); 00018 00019 if (typeid(ast) != typeid(SequentialFieldDeclaration)) 00020 return false; 00021 00022 if (this->fieldDeclaration && this->simpleFieldDeclaration) 00023 result = (*(this->fieldDeclaration) == *(sequentialFieldDeclaration.fieldDeclaration) && 00024 *(this->simpleFieldDeclaration) == *(sequentialFieldDeclaration.simpleFieldDeclaration)); 00025 00026 return result && FieldDeclaration::operator==(ast); 00027 } |
|
Implements Ast. Definition at line 37 of file sequentialfielddeclaration.h. References Visitor::visitSequentialFieldDeclaration().
00037 { 00038 return visitor.visitSequentialFieldDeclaration(this); 00039 } |
|
Definition at line 9 of file sequentialfielddeclaration.h. Referenced by operator=(), and operator==(). |
|
Definition at line 10 of file sequentialfielddeclaration.h. Referenced by operator=(), and operator==(). |