2012-12-05 19:32:43 +00:00
|
|
|
/*
|
|
|
|
* PostfixExpression.h
|
|
|
|
*
|
|
|
|
* Created on: Dec 5, 2012
|
|
|
|
* Author: attero
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef POSTFIXEXPRESSION_H_
|
|
|
|
#define POSTFIXEXPRESSION_H_
|
2012-12-05 20:31:06 +00:00
|
|
|
#include "ASTExpression.h"
|
2012-12-07 15:58:27 +00:00
|
|
|
#include "ASTStatement.h"
|
2012-12-30 13:59:30 +00:00
|
|
|
#include "../ContextManager.h"
|
2012-12-05 19:32:43 +00:00
|
|
|
|
2012-12-28 10:41:43 +00:00
|
|
|
/**
|
|
|
|
* PostfixExpression is in current implementation an abstraction
|
|
|
|
* of function call
|
|
|
|
*/
|
2012-12-05 20:31:06 +00:00
|
|
|
class PostfixExpression : public ASTExpression {
|
2012-12-05 19:32:43 +00:00
|
|
|
public:
|
2012-12-09 16:42:13 +00:00
|
|
|
std::string name;
|
2012-12-30 13:59:30 +00:00
|
|
|
ContextManager * context;
|
2012-12-28 16:39:43 +00:00
|
|
|
bool native;
|
2012-12-07 15:58:27 +00:00
|
|
|
std::vector<ASTExpression *> arguments;
|
|
|
|
void add_argument(ASTExpression * expression);
|
|
|
|
|
|
|
|
virtual SenchaObject evaluate();
|
|
|
|
virtual void execute();
|
2012-12-28 15:19:47 +00:00
|
|
|
virtual void execute_quietly(){ execute();};
|
2012-12-07 15:58:27 +00:00
|
|
|
|
2012-12-30 13:59:30 +00:00
|
|
|
PostfixExpression( std::string name, ContextManager * context);
|
2012-12-05 19:32:43 +00:00
|
|
|
virtual ~PostfixExpression();
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif /* POSTFIXEXPRESSION_H_ */
|