summaryrefslogtreecommitdiffstats
path: root/src/script/qscriptcontext_p.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/script/qscriptcontext_p.h')
-rw-r--r--src/script/qscriptcontext_p.h361
1 files changed, 0 insertions, 361 deletions
diff --git a/src/script/qscriptcontext_p.h b/src/script/qscriptcontext_p.h
deleted file mode 100644
index 22e7c6b..0000000
--- a/src/script/qscriptcontext_p.h
+++ /dev/null
@@ -1,361 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
-** Contact: Nokia Corporation (qt-info@nokia.com)
-**
-** This file is part of the QtScript module of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** No Commercial Usage
-** This file contains pre-release code and may not be distributed.
-** You may use this file in accordance with the terms and conditions
-** contained in the either Technology Preview License Agreement or the
-** Beta Release License Agreement.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Nokia gives you certain
-** additional rights. These rights are described in the Nokia Qt LGPL
-** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
-** package.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU General Public License version 3.0 requirements will be
-** met: http://www.gnu.org/copyleft/gpl.html.
-**
-** If you are unsure which license is appropriate for your use, please
-** contact the sales department at http://qt.nokia.com/contact.
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#ifndef QSCRIPTCONTEXT_P_H
-#define QSCRIPTCONTEXT_P_H
-
-#include "qscriptcontextfwd_p.h"
-
-#ifndef QT_NO_SCRIPT
-
-#include "qscriptenginefwd_p.h"
-#include "qscriptnameid_p.h"
-
-#include <QtCore/qnumeric.h>
-
-QT_BEGIN_NAMESPACE
-
-//
-// W A R N I N G
-// -------------
-//
-// This file is not part of the Qt API. It exists purely as an
-// implementation detail. This header file may change from version to
-// version without notice, or even be removed.
-//
-// We mean it.
-//
-
-inline QScriptContextPrivate::QScriptContextPrivate()
- : previous(0),
- argc(0),
- m_state(QScriptContext::NormalState),
- args(0),
- tempStack(0),
- stackPtr(0),
- m_code(0),
- iPtr(0),
- firstInstruction(0),
- lastInstruction(0),
- currentLine(0),
- currentColumn(0),
- errorLineNumber(0),
- catching(false),
- m_calledAsConstructor(false),
- calleeMetaIndex(0),
- q_ptr(0)
-{
-}
-
-inline QScriptContextPrivate *QScriptContextPrivate::get(QScriptContext *q)
-{
- if (q)
- return q->d_func();
- return 0;
-}
-
-inline const QScriptContextPrivate *QScriptContextPrivate::get(const QScriptContext *q)
-{
- if (q)
- return q->d_func();
- return 0;
-}
-
-inline QScriptContext *QScriptContextPrivate::create()
-{
- return new QScriptContext;
-}
-
-inline QScriptEnginePrivate *QScriptContextPrivate::engine() const
-{
- return m_activation.engine();
-}
-
-inline QScriptContextPrivate *QScriptContextPrivate::parentContext() const
-{
- return previous;
-}
-
-inline void QScriptContextPrivate::init(QScriptContextPrivate *parent)
-{
- m_state = QScriptContext::NormalState;
- previous = parent;
- args = 0;
- argc = 0;
- m_code = 0;
- iPtr = firstInstruction = lastInstruction = 0;
- stackPtr = tempStack = (parent != 0) ? parent->stackPtr : 0;
- m_activation.invalidate();
- m_thisObject.invalidate();
- m_result.invalidate();
- m_scopeChain.invalidate();
- m_callee.invalidate();
- m_arguments.invalidate();
- currentLine = -1;
- currentColumn = -1;
- errorLineNumber = -1;
- m_calledAsConstructor = false;
-}
-
-inline QScriptValueImpl QScriptContextPrivate::argument(int index) const
-{
- if (index >= argc)
- return engine()->undefinedValue();
-
- Q_ASSERT(args != 0);
- return args[index];
-}
-
-inline int QScriptContextPrivate::argumentCount() const
-{
- return argc;
-}
-
-inline QScriptValueImpl QScriptContextPrivate::argumentsObject() const
-{
- if (!m_arguments.isValid() && m_activation.isValid()) {
- QScriptContextPrivate *dd = const_cast<QScriptContextPrivate*>(this);
- engine()->newArguments(&dd->m_arguments, m_activation,
- argc, m_callee);
- }
- return m_arguments;
-}
-
-inline void QScriptContextPrivate::throwException()
-{
- m_state = QScriptContext::ExceptionState;
-}
-
-inline bool QScriptContextPrivate::hasUncaughtException() const
-{
- return m_state == QScriptContext::ExceptionState;
-}
-
-inline void QScriptContextPrivate::recover()
-{
- m_state = QScriptContext::NormalState;
- errorLineNumber = -1;
-}
-
-inline bool QScriptContextPrivate::isNumerical(const QScriptValueImpl &v)
-{
- switch (v.type()) {
- case QScript::BooleanType:
- case QScript::IntegerType:
- case QScript::NumberType:
- return true;
-
- default:
- return false;
- }
-}
-
-inline bool QScriptContextPrivate::eq_cmp(const QScriptValueImpl &lhs, const QScriptValueImpl &rhs)
-{
- if (lhs.type() == rhs.type()) {
- switch (lhs.type()) {
- case QScript::InvalidType:
- case QScript::UndefinedType:
- case QScript::NullType:
- return true;
-
- case QScript::NumberType:
- return lhs.m_number_value == rhs.m_number_value;
-
- case QScript::ReferenceType:
- case QScript::IntegerType:
- return lhs.m_int_value == rhs.m_int_value;
-
- case QScript::BooleanType:
- return lhs.m_bool_value == rhs.m_bool_value;
-
- case QScript::StringType:
- if (lhs.m_string_value->unique && rhs.m_string_value->unique)
- return lhs.m_string_value == rhs.m_string_value;
- return lhs.m_string_value->s == rhs.m_string_value->s;
-
- case QScript::PointerType:
- return lhs.m_ptr_value == rhs.m_ptr_value;
-
- case QScript::ObjectType:
- if (lhs.isVariant())
- return lhs.m_object_value == rhs.m_object_value || lhs.toVariant() == rhs.toVariant();
-#ifndef QT_NO_QOBJECT
- else if (lhs.isQObject())
- return lhs.m_object_value == rhs.m_object_value || lhs.toQObject() == rhs.toQObject();
-#endif
- else
- return lhs.m_object_value == rhs.m_object_value;
-
- case QScript::LazyStringType:
- return *lhs.m_lazy_string_value == *rhs.m_lazy_string_value;
- }
- }
-
- return eq_cmp_helper(lhs, rhs);
-}
-
-inline bool QScriptContextPrivate::strict_eq_cmp( const QScriptValueImpl &lhs, const QScriptValueImpl &rhs)
-{
- if (lhs.type() != rhs.type())
- return false;
-
- switch (lhs.type()) {
- case QScript::InvalidType:
- case QScript::UndefinedType:
- case QScript::NullType:
- return true;
-
- case QScript::NumberType:
- if (qIsNaN(lhs.m_number_value) || qIsNaN(rhs.m_number_value))
- return false;
- return lhs.m_number_value == rhs.m_number_value;
-
- case QScript::IntegerType:
- return lhs.m_int_value == rhs.m_int_value;
-
- case QScript::BooleanType:
- return lhs.m_bool_value == rhs.m_bool_value;
-
- case QScript::StringType:
- if (lhs.m_string_value->unique && rhs.m_string_value->unique)
- return lhs.m_string_value == rhs.m_string_value;
- return lhs.m_string_value->s == rhs.m_string_value->s;
-
- case QScript::ObjectType:
- return lhs.m_object_value == rhs.m_object_value;
-
- case QScript::ReferenceType:
- return lhs.m_int_value == rhs.m_int_value;
-
- case QScript::PointerType:
- return lhs.m_ptr_value == rhs.m_ptr_value;
-
- case QScript::LazyStringType:
- return *lhs.m_lazy_string_value == *rhs.m_lazy_string_value;
- }
-
- return false;
-}
-
-inline QScriptValueImpl QScriptContextPrivate::throwTypeError(const QString &text)
-{
- return throwError(QScriptContext::TypeError, text);
-}
-
-inline QScriptValueImpl QScriptContextPrivate::throwSyntaxError(const QString &text)
-{
- return throwError(QScriptContext::SyntaxError, text);
-}
-
-inline QScriptValueImpl QScriptContextPrivate::thisObject() const
-{
- return m_thisObject;
-}
-
-inline void QScriptContextPrivate::setThisObject(const QScriptValueImpl &object)
-{
- m_thisObject = object;
-}
-
-inline QScriptValueImpl QScriptContextPrivate::callee() const
-{
- return m_callee;
-}
-
-inline bool QScriptContextPrivate::isCalledAsConstructor() const
-{
- return m_calledAsConstructor;
-}
-
-inline QScriptValueImpl QScriptContextPrivate::returnValue() const
-{
- return m_result;
-}
-
-inline void QScriptContextPrivate::setReturnValue(const QScriptValueImpl &value)
-{
- m_result = value;
-}
-
-inline QScriptValueImpl QScriptContextPrivate::activationObject() const
-{
- if (previous && !m_activation.property(QLatin1String("arguments")).isValid()) {
- QScriptContextPrivate *dd = const_cast<QScriptContextPrivate*>(this);
- dd->m_activation.setProperty(QLatin1String("arguments"), argumentsObject());
- }
- return m_activation;
-}
-
-inline void QScriptContextPrivate::setActivationObject(const QScriptValueImpl &activation)
-{
- m_activation = activation;
-}
-
-inline const QScriptInstruction *QScriptContextPrivate::instructionPointer()
-{
- return iPtr;
-}
-
-inline void QScriptContextPrivate::setInstructionPointer(const QScriptInstruction *instructionPointer)
-{
- iPtr = instructionPointer;
-}
-
-inline const QScriptValueImpl *QScriptContextPrivate::baseStackPointer() const
-{
- return tempStack;
-}
-
-inline const QScriptValueImpl *QScriptContextPrivate::currentStackPointer() const
-{
- return stackPtr;
-}
-
-inline QScriptContext::ExecutionState QScriptContextPrivate::state() const
-{
- return m_state;
-}
-
-QT_END_NAMESPACE
-
-#endif // QT_NO_SCRIPT
-#endif