| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
configure.exe
examples/examples.pro
qmake/Makefile.unix
qmake/Makefile.win32
qmake/Makefile.win32-g++
qmake/Makefile.win32-g++-sh
qmake/qmake.pro
src/script/api/qscriptable.h
src/script/api/qscriptclasspropertyiterator.h
src/script/api/qscriptcontext.h
src/script/api/qscriptengineagent.cpp
src/script/api/qscriptstring.cpp
src/script/api/qscriptstring.h
src/script/api/qscriptvalueiterator.cpp
src/script/api/qscriptvalueiterator.h
src/script/qscriptclass.cpp
src/script/qscriptcontext.cpp
src/script/qscriptengine.cpp
src/script/qscriptengine_p.cpp
src/script/qscriptvalue.cpp
src/script/qscriptvalue_p.h
src/script/qscriptvalueimplfwd_p.h
src/script/script.pro
src/src.pro
tests/auto/auto.pro
tests/auto/qscriptv8testsuite/tst_qscriptv8testsuite.cpp
tools/configure/configureapp.cpp
|
| |
| |
| |
| | |
It's faster.
|
| |
| |
| |
| | |
Get rid of the hash.
|
| |
| |
| |
| |
| | |
It's the d-pointer that we most frequently want to access, so store it
to avoid having to use QScriptEnginePrivate::get() all over the place.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
To achieve behavior of the old back-end. There, the recursion guard
was automatic because a mark flag was set on the object as soon as
marking begun, but in JSC it appears to only be set _after_ the
marking is completed.
|
| |
| |
| |
| |
| | |
For the innermost frame, we don't have a returnPC, so use the line
number that was last passed to the engine agent.
|
| |
| |
| |
| |
| | |
If the debugger stops execution, we want the frame pointer to be
in sync (so we get the full backtrace).
|
| |
| |
| |
| |
| | |
It needs to work even when there is no public QScriptValue that
holds a reference to the object.
|
| |
| |
| |
| |
| |
| | |
QtFunction::mark() does not cause infinite recursion any more.
Reviewed-by: Kent Hansen
|
| |
| |
| |
| | |
It is a POD with the size of a pointer
|
| |
| |
| |
| |
| | |
Remove useless variable.
Use QBoolBlocker instread of custom QScript::InEval.
|
| |
| |
| |
| | |
Otherwise we will crash if someone tries to do something with the value.
|
| |
| |
| |
| |
| |
| |
| | |
QScriptValue id were made persistent. It depands
on JSC:JSValue JSCell pointer not on QScriptValuePrivate attr.
Reviewed-by: Kent Hansen
|
| |
| |
| |
| |
| |
| | |
Since QScriptEngine::evaluate() doesn't create a new stack frame
anymore, we need to use a dedicated variable to keep track of
whether the engine is currently evaluating or not.
|
| |
| |
| |
| | |
Reviewed-by: Kent Hansen
|
| |
| |
| |
| |
| |
| | |
There is no point in setting class member in destructor
Reviewed-by: Kent Hansen
|
| |
| |
| |
| |
| |
| | |
Static method QScriptValue::initFromJSCValue was removed.
Reviewed-by: Kent Hansen
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Internal API of QScriptValue were cleaned. toPublic() was
removed and replaced by standard static Private::get().
All initFromXXX() methods were replaced by overload call
of initFrom().
Reviewed-by: Kent Hansen
|
| |
| |
| |
| |
| |
| |
| |
| | |
Comparison between pointer and int where removed.
According to doc operator-> where created (class
QScriptValueAutoRegister suppose to behave as pointer).
Reviewed-by: Kent Hansen
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
functions
On js functions, if the number of arguments is different from the number
of expected arguments, they are located in different place in the
stackframe. We need to call the JSC functions that take that into account.
Test is the backtrace test
Reviewed-by: Kent Hansen
|
| |
| |
| |
| |
| |
| |
| | |
The returnPC points to the opcode after the call, but we want the opcode
right before to compute the line number.
Reviewed-by: Kent Hansen
|
| | |
|
| |
| |
| |
| | |
The engine owns its agents, and also knows when they are deleted.
|
| |
| |
| |
| |
| |
| | |
Unused variable were commented.
Reviewed-by: Kent Hansen
|
| |
| |
| |
| |
| |
| | |
Get rid off some compilation warnings about unused variables.
Reviewed-by: Kent Hansen
|
| |
| |
| |
| |
| |
| | |
Remove old unused visitors code.
Reviewed-by: Kent Hansen
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
qtscript-jsc-backend
Conflicts:
src/script/qscriptclass.cpp
src/script/qscriptcontext.cpp
src/script/qscriptengine.cpp
src/script/qscriptvalue.cpp
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Get rid of conversion functions QScript::qtStringFromJSCUString and
QScript::qtStringToJSCUString. Code was moved to cast operators.
Reviewed-by: Kent Hansen
|
| | |
| | |
| | |
| | | |
QtScript must respect dynamic metaobjects when installed.
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Since the internal Global Object is never exposed to the public, we
need to do like we do in setActivationObject(): if the object passed
is the Global Object proxy, use the internal Global Object as the
"real" argument. (JSC requires that the initial object pushed onto
the scope chain is an instance of JSC::JSGlobalObject, and the
Global Object proxy is not; hence, we can't push the proxy.)
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
change the coding style of function from
foo (arg=text)
to foo(arg = 'text')
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
- in QScriptContextInfo, get the filename of specials context
- in QScriptContextInfo, get the right information for the global
context (from the skipped fake frame)
- addapt the test to the current backtrace layout.
|
| | |
| | |
| | |
| | |
| | | |
No need to look up the global object via the scope chain since we have
a direct pointer to it already.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Follow-up to commit e0a86dc604b87921652b844a5f85889bb6291ed9.
Just like in the activationObject() function, we need to check if
the activation object is actually a proxy to another object, and
return that other object if that's the case (the proxy object should
not be exposed to the public).
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This was possible in the old back-end. In JSC, activation objects
have to be instances of JSC::JSVariableObject. So the way we solve
it is by having our QScriptActivationObject be able to act as a
proxy to any other JSObject.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Don't compile moc_qscriptqobject_p.cpp separately but compile it from
qscriptqobject.cpp instead, to ensure that config.h is included. That
ensures that min/max are undeffed as macros.
|
| | |
| | |
| | |
| | |
| | |
| | | |
In WebKit/JSC config.h needs to be included first in .cpp files, to among
other things make sure that min/max are not defined as macros through
windows.h.
|
| | |
| | |
| | |
| | |
| | | |
A forward declaration of QScriptString is not sufficient for MSVC,
include qscriptstring.h.
|
| | |
| | |
| | |
| | |
| | | |
Use the JSC_HOST_CALL annotation for the declaration as well as for the
definition of the JSC callback functions.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Don't rely on the current working directory being src/script, as that does
not appear to be the case when building with .vcproj files. Instead add
src/script to the INCLUDEPATH, so that the above inclusion works.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
Not needed since commit 9727a71ea077658148e963bc8510269b08095023.
|