53 #include <QtCore/qstringlist.h> 54 #include <QtScript/qscriptengine.h> 55 #include <QtScript/qscriptcontextinfo.h> 56 #include <QtScript/qscriptvalueiterator.h> 57 #include <QtCore/qdebug.h> 120 switch (command.
type()) {
264 if ((idx >= 0) && (idx < backend->contextCount()))
299 for (
int i = 0; i < src.
size(); ++i)
332 for (
int i = 0; i < objects.
size(); ++i) {
334 for (
int j = pathIndex; val.
isValid() && (j < path.
size()); ++j) {
357 if (path.
size() > 1) {
358 const QString &topLevelIdent = path.
at(0);
365 for (
int i = 0; i < scopeChain.
size(); ++i) {
373 for (
int i = 1; obj.
isObject() && (i < path.
size()-1); ++i)
384 for (
int i = 0; i < keywords.
size(); ++i) {
391 for (
int i = 0; i < objects.
size(); ++i) {
399 matches.
insert(propertyName);
428 for (
int i = 0; i < delta.changedProperties.size(); ++i) {
437 for (
int j = 0; j < delta.addedProperties.size(); ++j) {
471 for (
int i = 0; (i < count) && it->
hasNext(); ++i) {
493 backend->
evaluate(contextIndex, program, fileName, lineNumber);
The QVariant class acts like a union for the most common Qt data types.
The QScriptContext class represents a Qt Script function invocation.
void stepOut()
Steps out of the current script function.
QScriptDebuggerValue scriptValue() const
QScriptObjectSnapshot * scriptObjectSnapshot(int id) const
QScriptValue property(const QString &name, const ResolveFlags &mode=ResolvePrototype) const
Returns the value of this QScriptValue's property with the given name, using the given mode to resolv...
virtual QScriptDebuggerResponse execute(QScriptDebuggerBackend *backend, const QScriptDebuggerCommand &command)
Applies the given command to the given backend.
QScriptContextsDelta contextsCheckpoint()
#define QT_END_NAMESPACE
This macro expands to.
int functionEndLineNumber() const
Returns the line number where the definition of the called function ends, or -1 if the line number is...
#define it(className, varName)
QScriptValue toScriptValue(QScriptEngine *engine) const
Converts this QScriptDebuggerValue to a QScriptValue in the given engine and returns the resulting va...
QScriptValue callee() const
Returns the callee.
QScriptValueList scopeChain() const
Returns the scope chain of this QScriptContext.
void stepInto(int count=1)
Steps into the next script statement.
QScriptBreakpointMap breakpoints() const
Returns this backend's breakpoints.
The QScriptDebuggerResponse class represents a front-end's response to a QScriptDebuggerCommand.
int length() const
Returns the number of characters in this string.
void interruptEvaluation()
Interrupts script evaluation.
QString toString() const
Returns the string value of this QScriptValue, as defined in ECMA-262 section 9.8, "ToString".
int lineNumber() const
Returns the LineNumber attribute of this command converted to an int.
QString name() const
Returns the name of the last property that was jumped over using next() or previous().
bool startsWith(const QString &s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
Returns true if the string starts with s; otherwise returns false.
void deleteAllBreakpoints()
Deletes all breakpoints.
QLatin1String(DBUS_INTERFACE_DBUS))) Q_GLOBAL_STATIC_WITH_ARGS(QString
qint64 resolveScript(const QString &fileName) const
void returnToCaller(int contextIndex, const QScriptValue &value)
void runToLocation(const QString &fileName, int lineNumber)
Continues evaluation until the location defined by the given fileName and lineNumber is reached...
QScriptValueIterator * scriptValueIterator(int id) const
The QString class provides a Unicode character string.
QScriptContext * context(int index) const
Returns the context for the frame with the given index.
~QScriptDebuggerCommandExecutorPrivate()
QScriptEngine * engine() const
Returns the script engine that this backend is attached to, or 0 if the backend is not attached to an...
void continueEvalution()
Continues script evaluation.
Type type() const
Returns the type of this command.
QString name() const
Returns the name of this QScriptValueProperty.
virtual ~QScriptDebuggerCommandExecutor()
bool isEmpty() const
Returns true if the list contains no items; otherwise returns false.
int toInt(bool *ok=0) const
Returns the variant as an int if the variant has type() Int , Bool , ByteArray , Char ...
int contextCount() const
Returns the number of contexts (frames).
The QScriptScriptData class holds data associated with a script.
QScriptValue::PropertyFlags flags() const
Returns the flags of this QScriptValueProperty.
QString fileName() const
Returns the FileName attribute of this command converted to a string.
QStringList toStringList() const
Returns the variant as a QStringList if the variant has type() StringList, String ...
QScriptBreakpointData breakpointData(int id) const
Returns the data associated with the breakpoint identified by the given id.
void append(const T &t)
Inserts value at the end of the list.
The QScriptEngine class provides an environment for evaluating Qt Script code.
void evaluate(int contextIndex, const QString &program, const QString &fileName, int lineNumber)
Evaluates the given program.
#define QT_BEGIN_NAMESPACE
This macro expands to.
QScriptDebuggerCommandExecutor()
int newScriptObjectSnapshot()
QList< T > toList() const
const T & at(int i) const
Returns the item at index position i in the list.
QScriptScriptsDelta scriptsDelta() const
Returns the difference between the latest scripts checkpoint and the previous checkpoint.
The QStringList class provides a list of strings.
void setError(Error error)
Sets the error code of this response.
const_iterator insert(const T &value)
QScriptDebuggerValuePropertyList changedProperties
static const char * data(const QByteArray &arr)
QStringList removedProperties
static bool isPrefixOf(const QString &prefix, const QString &what)
The QScriptBreakpointData class contains data associated with a breakpoint.
void setIgnoreExceptions(bool ignore)
static QVariant fromValue(const T &value)
Returns a QVariant containing a copy of value.
void stepOver(int count=1)
Steps over the next script statement.
bool setBreakpointData(int id, const QScriptBreakpointData &data)
Sets the data associated with the breakpoint identified by the given id.
QStringList backtrace() const
Returns a backtrace of the current execution.
bool isEvaluating() const
Returns true if this engine is currently evaluating a script, otherwise returns false.
virtual void resume()=0
This function is called when control should be returned back to the back-end, i.
int functionStartLineNumber() const
Returns the line number where the definition of the called function starts, or -1 if the line number ...
ExecutionState state() const
Returns the frameution state of this QScriptContext.
void qStableSort(RandomAccessIterator start, RandomAccessIterator end)
The QScriptDebuggerCommand class represents a command issued to a QScriptDebuggerFrontend.
QScriptValue::PropertyFlags flags() const
Returns the flags of the last property that was jumped over using next() or previous().
The QScriptDebuggerValue class represents a script value.
void setProperty(const QString &name, const QScriptValue &value, const PropertyFlags &flags=KeepExistingFlags)
Sets the value of this QScriptValue's property with the given name to the given value.
The QScriptContextInfo class provides additional information about a QScriptContext.
QScriptScriptMap scripts() const
Returns the scripts that this backend knows about.
The QScriptValueIterator class provides a Java-style iterator for QScriptValue.
The QScriptDebuggerBackend class is the base class of debugger back-ends.
QScriptValue value() const
Returns the value of this QScriptValueProperty.
void setResult(const QVariant &value)
Sets the Result attribute of this response to the given value.
QScriptDebuggerValue subordinateScriptValue() const
static QString fromLatin1(const char *, int size=-1)
Returns a QString initialized with the first size characters of the Latin-1 string str...
static const char *const keywords[MAX_KEYWORD]
void scriptsCheckpoint()
Makes a checkpoint of the currently loaded scripts.
QScriptValue value() const
Returns the value of the last property that was jumped over using next() or previous().
T & last()
Returns a reference to the last item in the list.
int size() const
Returns the number of items in the list.
bool isEmpty() const
Returns true if the map contains no items; otherwise returns false.
void deleteScriptObjectSnapshot(int id)
Delta capture(const QScriptValue &object)
QVariant attribute(Attribute attribute, const QVariant &defaultValue=QVariant()) const
Returns the value of the given attribute, or defaultValue if the attribute is not defined...
void clearExceptions()
Clears any uncaught exceptions in this engine.
QList< qint64 > contextIds() const
void setAsync(bool async)
bool ignoreExceptions() const
QScriptValue activationObject() const
Returns the activation object of this QScriptContext.
QScriptScriptData scriptData(qint64 id) const
Returns the data for the script identified by the given id.
int newScriptValueIterator(const QScriptValue &object)
bool deleteBreakpoint(int id)
Deletes the breakpoint identified by the given id.
QScriptDebuggerCommandExecutorPrivate()
QScriptDebuggerValuePropertyList addedProperties
bool isValid() const
Returns true if the storage type of this variant is not QVariant::Invalid; otherwise returns false...
QScriptValue thisObject() const
Returns the `this' object associated with this QScriptContext.
qint64 scriptId() const
Returns the ScriptID attribute of this command converted to a qint64.
bool hasUncaughtException() const
Returns true if the last script evaluation resulted in an uncaught exception; otherwise returns false...
The QScriptValue class acts as a container for the Qt Script data types.
QScriptBreakpointData breakpointData() const
static QString fileName(const QString &fileUrl)
bool isValid() const
Returns true if this QScriptValue is valid; otherwise returns false.
void next()
Advances the iterator by one position.
bool isObject() const
Returns true if this QScriptValue is of the Object type; otherwise returns false. ...
bool hasNext() const
Returns true if there is at least one item ahead of the iterator (i.e.
void deleteScriptValueIterator(int id)
int setBreakpoint(const QScriptBreakpointData &data)
Sets a breakpoint defined by the given data, and returns a unique identifier for the new breakpoint...
QScriptValue prototype() const
If this QScriptValue is an object, returns the internal prototype (__proto__ property) of this object...