summaryrefslogtreecommitdiff
path: root/src/context.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/context.cc')
-rw-r--r--src/context.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/context.cc b/src/context.cc
index 4bc6ed5..65d5e23 100644
--- a/src/context.cc
+++ b/src/context.cc
@@ -84,6 +84,8 @@ Value Context::lookup_variable(QString name, bool silent) const
}
return Value();
}
+ if (!parent && constants.contains(name))
+ return constants[name];
if (variables.contains(name))
return variables[name];
if (parent)
@@ -93,6 +95,14 @@ Value Context::lookup_variable(QString name, bool silent) const
return Value();
}
+void Context::set_constant(QString name, Value value)
+{
+ if (constants.contains(name))
+ PRINTA("WARNING: Attempt to modify constant '%1'.",name);
+ else
+ constants.insert(name,value);
+}
+
Value Context::evaluate_function(QString name, const QVector<QString> &argnames, const QVector<Value> &argvalues) const
{
if (functions_p && functions_p->contains(name))
contact: Jan Huwald // Impressum