aboutsummaryrefslogtreecommitdiffstats
path: root/src/libs/qmljs/qmljsinterpreter.cpp
diff options
context:
space:
mode:
authorRoberto Raggi <[email protected]>2010-02-03 10:24:25 +0100
committerRoberto Raggi <[email protected]>2010-02-03 10:24:25 +0100
commitba18e7003421562b698d064998b8eecf1f92c4a1 (patch)
treeb79b692f50e0a14ab9ce229538dc4dba165e396b /src/libs/qmljs/qmljsinterpreter.cpp
parent95849cb0bda2a5d91392c0d34fc10acd8f571b2c (diff)
Introduced QML/JS references.
Done with ckamm
Diffstat (limited to 'src/libs/qmljs/qmljsinterpreter.cpp')
-rw-r--r--src/libs/qmljs/qmljsinterpreter.cpp53
1 files changed, 53 insertions, 0 deletions
diff --git a/src/libs/qmljs/qmljsinterpreter.cpp b/src/libs/qmljs/qmljsinterpreter.cpp
index 75e9258eb07..b248fd2f94d 100644
--- a/src/libs/qmljs/qmljsinterpreter.cpp
+++ b/src/libs/qmljs/qmljsinterpreter.cpp
@@ -567,6 +567,9 @@ void ValueVisitor::visit(const FunctionValue *)
{
}
+void ValueVisitor::visit(const Reference *)
+{
+}
////////////////////////////////////////////////////////////////////////////////
// Value
@@ -614,6 +617,11 @@ const FunctionValue *Value::asFunctionValue() const
return 0;
}
+const Reference *Value::asReference() const
+{
+ return 0;
+}
+
////////////////////////////////////////////////////////////////////////////////
// Environment
////////////////////////////////////////////////////////////////////////////////
@@ -700,6 +708,51 @@ void StringValue::accept(ValueVisitor *visitor) const
visitor->visit(this);
}
+
+Context::Context(Engine *engine)
+ : _engine(engine)
+{
+}
+
+Context::~Context()
+{
+}
+
+Engine *Context::engine() const
+{
+ return _engine;
+}
+
+const Value *Context::property(const ObjectValue *object, const QString &name) const
+{
+ const Properties properties = _properties.value(object);
+ return properties.value(name, engine()->undefinedValue());
+}
+
+void Context::setProperty(const ObjectValue *object, const QString &name, const Value *value)
+{
+ _properties[object].insert(name, value);
+}
+
+Reference::Reference()
+{
+}
+
+Reference::~Reference()
+{
+}
+
+const Reference *Reference::asReference() const
+{
+ return this;
+}
+
+void Reference::accept(ValueVisitor *visitor) const
+{
+ visitor->visit(this);
+}
+
+
MemberProcessor::MemberProcessor()
{
}