コード例 #1
0
ファイル: ASTNodes.hpp プロジェクト: atgeirr/equelle
    virtual void accept(ASTVisitorInterface& visitor)
    {
        visitor.visit(*this);
        ftype_->accept(visitor);
        visitor.postVisit(*this);
#if 0
        SymbolTable::setCurrentFunction(funcname_);
        visitor.visit(*this);
        ftype_->accept(visitor);
        visitor.postVisit(*this);
        SymbolTable::setCurrentFunction(SymbolTable::getCurrentFunction().parentScope());
#endif
    }
コード例 #2
0
 virtual void accept(ASTVisitorInterface& visitor)
 {
     SymbolTable::setCurrentFunction(funcname_);
     visitor.visit(*this);
     funcargs_->accept(visitor);
     visitor.postVisit(*this);
 }
コード例 #3
0
ファイル: ASTNodes.hpp プロジェクト: atgeirr/equelle
 virtual void accept(ASTVisitorInterface& visitor)
 {
     visitor.visit(*this);
     left_->accept(visitor);
     visitor.midVisit(*this);
     right_->accept(visitor);
     visitor.postVisit(*this);
 }
コード例 #4
0
 virtual void accept(ASTVisitorInterface& visitor)
 {
     SymbolTable::setCurrentFunction(loop_name_);
     visitor.visit(*this);
     loop_block_->accept(visitor);
     visitor.postVisit(*this);
     SymbolTable::setCurrentFunction(SymbolTable::getCurrentFunction().parentScope());
 }
コード例 #5
0
 virtual void accept(ASTVisitorInterface& visitor)
 {
     visitor.visit(*this);
     funcstart_->accept(visitor);
     funcbody_->accept(visitor);
     visitor.postVisit(*this);
     SymbolTable::setCurrentFunction(SymbolTable::getCurrentFunction().parentScope());
 }
コード例 #6
0
ファイル: ASTNodes.hpp プロジェクト: atgeirr/equelle
 virtual void accept(ASTVisitorInterface& visitor)
 {
     visitor.visit(*this);
     number_->accept(visitor);
     if (unit_) {
         unit_->accept(visitor);
     }
     visitor.postVisit(*this);
 }
コード例 #7
0
ファイル: ASTNodes.hpp プロジェクト: atgeirr/equelle
 virtual void accept(ASTVisitorInterface& visitor)
 {
     visitor.visit(*this);
     predicate_->accept(visitor);
     visitor.questionMarkVisit(*this);
     iftrue_->accept(visitor);
     visitor.colonVisit(*this);
     iffalse_->accept(visitor);
     visitor.postVisit(*this);
 }
コード例 #8
0
ファイル: ASTNodes.hpp プロジェクト: atgeirr/equelle
 virtual void accept(ASTVisitorInterface& visitor)
 {
     visitor.visit(*this);
     const size_t n = args_.size();
     for (size_t i = 0; i < n; ++i) {
         args_[i]->accept(visitor);
         if (i < n - 1) {
             visitor.midVisit(*this);
         }
     }
     visitor.postVisit(*this);
 }
コード例 #9
0
ファイル: ASTNodes.hpp プロジェクト: atgeirr/equelle
 virtual void accept(ASTVisitorInterface& visitor)
 {
     visitor.visit(*this);
     // btype_->accept(visitor);
     if (gridmapping_) {
         gridmapping_->accept(visitor);
     }
     if (subsetof_) {
         subsetof_->accept(visitor);
     }
     visitor.postVisit(*this);
 }
コード例 #10
0
ファイル: ASTNodes.hpp プロジェクト: atgeirr/equelle
 virtual void accept(ASTVisitorInterface& visitor)
 {
     visitor.visit(*this);
 }
コード例 #11
0
ファイル: ASTNodes.hpp プロジェクト: atgeirr/equelle
 virtual void accept(ASTVisitorInterface& visitor)
 {
     visitor.visit(*this);
     expr_->accept(visitor);
     visitor.postVisit(*this);
 }
コード例 #12
0
ファイル: ASTNodes.hpp プロジェクト: atgeirr/equelle
 virtual void accept(ASTVisitorInterface& visitor)
 {
     visitor.visit(*this);
     loop_block_->accept(visitor);
     visitor.postVisit(*this);
 }