LoopAbstraction.cpp

Go to the documentation of this file.
00001 
00012 #include "LoopAbstraction.hpp"
00013 #include <assert.h>
00014 #include <iostream>
00015 using namespace std;
00016 
00017 namespace OA {
00018   namespace Loop {
00019 
00020 int LoopAbstraction::sAbstractionsBuilt = 0;
00021 
00022 LoopAbstraction::LoopAbstraction(
00023     OA_ptr<LoopIndex> loopIndex,
00024     StmtHandle loopStmt,
00025     StmtHandle endStmt,
00026     OA_ptr<LoopAbstraction> parent)
00027     :
00028     mLoopIndex(loopIndex),
00029     mLoopStatement(loopStmt),
00030     mEndStatement(endStmt),
00031     mParent(parent)
00032 {
00033     mOrder = sAbstractionsBuilt++;
00034 }
00035 
00036 bool LoopAbstraction::operator<(LoopAbstraction &other) {
00037     return(mOrder < other.mOrder);
00038 }
00039 
00040 bool LoopAbstraction::operator==(LoopAbstraction &other) {
00041     return(mOrder == other.mOrder);
00042 }
00043 
00044 } } // namespaces
00045