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