summaryrefslogtreecommitdiffstats
path: root/Sencha-lang/AST/VariableExpression.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Sencha-lang/AST/VariableExpression.cpp')
-rw-r--r--Sencha-lang/AST/VariableExpression.cpp41
1 files changed, 41 insertions, 0 deletions
diff --git a/Sencha-lang/AST/VariableExpression.cpp b/Sencha-lang/AST/VariableExpression.cpp
new file mode 100644
index 0000000..93856f0
--- /dev/null
+++ b/Sencha-lang/AST/VariableExpression.cpp
@@ -0,0 +1,41 @@
+/*
+ * VariableExpression.cpp
+ *
+ * Created on: Dec 17, 2012
+ * Author: att
+ */
+
+#include "VariableExpression.h"
+
+VariableExpression::VariableExpression(ASTNode * parent, Context * context, std::string name) {
+
+ this->name = name;
+ this->parent = parent;
+ this->context = context;
+}
+
+std::string VariableExpression::debug()
+{
+ std::string debug_note = "variable: " + name;
+ return debug_note;
+}
+VariableExpression::~VariableExpression() {
+ // Do nothing
+}
+
+SenchaObject VariableExpression::evaluate()
+{
+ SenchaObject result = context->get(name);
+ result.name = name;
+ return result;
+}
+
+void VariableExpression::execute()
+{
+ std::cout << evaluate().repr() << std::endl;
+}
+
+void VariableExpression::execute_quietly()
+{
+ evaluate();
+}