Blang/src/lib/Statement/DoStatement.cpp

60 lines
1.0 KiB
C++
Raw Normal View History

2016-04-22 21:46:31 +02:00
#include "Statement/DoStatement.hpp"
2016-11-24 12:15:08 +01:00
DoStatement::DoStatement(Statement *body, Expr *cond, SourceLocation DL, SourceLocation WL):
_doLoc(DL),
_whileLoc(WL)
{
_subStmts[BODY] = body;
_subStmts[COND] = cond;
2016-04-22 21:46:31 +02:00
}
2016-11-24 12:15:08 +01:00
Expr *DoStatement::getCond()
{
return reinterpret_cast<Expr *>(_subStmts[COND]);
}
const Expr *DoStatement::getCond() const
{
return reinterpret_cast<Expr *>(_subStmts[COND]);
2016-04-22 21:46:31 +02:00
}
2016-11-24 12:15:08 +01:00
void DoStatement::setCond(Expr *e)
{
_subStmts[COND] = reinterpret_cast<Statement *>(e);
2016-04-22 21:46:31 +02:00
}
2016-11-24 12:15:08 +01:00
Statement *DoStatement::getBody()
{
return _subStmts[BODY];
2016-04-22 21:46:31 +02:00
}
2016-11-24 12:15:08 +01:00
const Statement *DoStatement::getBody() const
{
return _subStmts[BODY];
2016-04-22 21:46:31 +02:00
}
2016-11-24 12:15:08 +01:00
void DoStatement::setBody(Statement *s)
{
_subStmts[BODY] = s;
2016-04-22 21:46:31 +02:00
}
2016-11-24 12:15:08 +01:00
SourceLocation DoStatement::getDoLocation() const
{
return _doLoc;
2016-04-22 21:46:31 +02:00
}
2016-11-24 12:15:08 +01:00
void DoStatement::setDoLocation(SourceLocation loc)
{
_doLoc = loc;
2016-04-22 21:46:31 +02:00
}
2016-11-24 12:15:08 +01:00
SourceLocation DoStatement::getWhileLocation() const
{
return _whileLoc;
2016-04-22 21:46:31 +02:00
}
2016-11-24 12:15:08 +01:00
void DoStatement::setWhileLocation(SourceLocation loc)
{
_whileLoc = loc;
2016-04-22 21:46:31 +02:00
}