diff options
author | Simon Hausmann <simon.hausmann@nokia.com> | 2009-06-15 09:06:43 (GMT) |
---|---|---|
committer | Simon Hausmann <simon.hausmann@nokia.com> | 2009-06-15 09:31:31 (GMT) |
commit | c411f16870f112c3407c28c22b617f613a82cff4 (patch) | |
tree | 29a1bcd590c8b31af2aab445bfe8a978dc5bf582 /src/3rdparty/webkit/JavaScriptCore/runtime/RegExpObject.cpp | |
parent | 3d77b56b32a0c53ec0bbfaa07236fedb900ff336 (diff) | |
download | Qt-c411f16870f112c3407c28c22b617f613a82cff4.zip Qt-c411f16870f112c3407c28c22b617f613a82cff4.tar.gz Qt-c411f16870f112c3407c28c22b617f613a82cff4.tar.bz2 |
Updated WebKit from /home/shausman/src/webkit/trunk to qtwebkit-4.6-snapshot-15062009 ( 65232bf00dc494ebfd978f998c88f58d18ecce1e )
Diffstat (limited to 'src/3rdparty/webkit/JavaScriptCore/runtime/RegExpObject.cpp')
-rw-r--r-- | src/3rdparty/webkit/JavaScriptCore/runtime/RegExpObject.cpp | 37 |
1 files changed, 19 insertions, 18 deletions
diff --git a/src/3rdparty/webkit/JavaScriptCore/runtime/RegExpObject.cpp b/src/3rdparty/webkit/JavaScriptCore/runtime/RegExpObject.cpp index 5a54ad0..687844e 100644 --- a/src/3rdparty/webkit/JavaScriptCore/runtime/RegExpObject.cpp +++ b/src/3rdparty/webkit/JavaScriptCore/runtime/RegExpObject.cpp @@ -21,6 +21,7 @@ #include "config.h" #include "RegExpObject.h" +#include "Error.h" #include "JSArray.h" #include "JSGlobalObject.h" #include "JSString.h" @@ -29,12 +30,12 @@ namespace JSC { -static JSValuePtr regExpObjectGlobal(ExecState*, const Identifier&, const PropertySlot&); -static JSValuePtr regExpObjectIgnoreCase(ExecState*, const Identifier&, const PropertySlot&); -static JSValuePtr regExpObjectMultiline(ExecState*, const Identifier&, const PropertySlot&); -static JSValuePtr regExpObjectSource(ExecState*, const Identifier&, const PropertySlot&); -static JSValuePtr regExpObjectLastIndex(ExecState*, const Identifier&, const PropertySlot&); -static void setRegExpObjectLastIndex(ExecState*, JSObject*, JSValuePtr); +static JSValue regExpObjectGlobal(ExecState*, const Identifier&, const PropertySlot&); +static JSValue regExpObjectIgnoreCase(ExecState*, const Identifier&, const PropertySlot&); +static JSValue regExpObjectMultiline(ExecState*, const Identifier&, const PropertySlot&); +static JSValue regExpObjectSource(ExecState*, const Identifier&, const PropertySlot&); +static JSValue regExpObjectLastIndex(ExecState*, const Identifier&, const PropertySlot&); +static void setRegExpObjectLastIndex(ExecState*, JSObject*, JSValue); } // namespace JSC @@ -71,54 +72,54 @@ bool RegExpObject::getOwnPropertySlot(ExecState* exec, const Identifier& propert return getStaticValueSlot<RegExpObject, JSObject>(exec, ExecState::regExpTable(exec), this, propertyName, slot); } -JSValuePtr regExpObjectGlobal(ExecState*, const Identifier&, const PropertySlot& slot) +JSValue regExpObjectGlobal(ExecState*, const Identifier&, const PropertySlot& slot) { return jsBoolean(asRegExpObject(slot.slotBase())->regExp()->global()); } -JSValuePtr regExpObjectIgnoreCase(ExecState*, const Identifier&, const PropertySlot& slot) +JSValue regExpObjectIgnoreCase(ExecState*, const Identifier&, const PropertySlot& slot) { return jsBoolean(asRegExpObject(slot.slotBase())->regExp()->ignoreCase()); } -JSValuePtr regExpObjectMultiline(ExecState*, const Identifier&, const PropertySlot& slot) +JSValue regExpObjectMultiline(ExecState*, const Identifier&, const PropertySlot& slot) { return jsBoolean(asRegExpObject(slot.slotBase())->regExp()->multiline()); } -JSValuePtr regExpObjectSource(ExecState* exec, const Identifier&, const PropertySlot& slot) +JSValue regExpObjectSource(ExecState* exec, const Identifier&, const PropertySlot& slot) { return jsString(exec, asRegExpObject(slot.slotBase())->regExp()->pattern()); } -JSValuePtr regExpObjectLastIndex(ExecState* exec, const Identifier&, const PropertySlot& slot) +JSValue regExpObjectLastIndex(ExecState* exec, const Identifier&, const PropertySlot& slot) { return jsNumber(exec, asRegExpObject(slot.slotBase())->lastIndex()); } -void RegExpObject::put(ExecState* exec, const Identifier& propertyName, JSValuePtr value, PutPropertySlot& slot) +void RegExpObject::put(ExecState* exec, const Identifier& propertyName, JSValue value, PutPropertySlot& slot) { lookupPut<RegExpObject, JSObject>(exec, propertyName, value, ExecState::regExpTable(exec), this, slot); } -void setRegExpObjectLastIndex(ExecState* exec, JSObject* baseObject, JSValuePtr value) +void setRegExpObjectLastIndex(ExecState* exec, JSObject* baseObject, JSValue value) { - asRegExpObject(baseObject)->setLastIndex(value->toInteger(exec)); + asRegExpObject(baseObject)->setLastIndex(value.toInteger(exec)); } -JSValuePtr RegExpObject::test(ExecState* exec, const ArgList& args) +JSValue RegExpObject::test(ExecState* exec, const ArgList& args) { return jsBoolean(match(exec, args)); } -JSValuePtr RegExpObject::exec(ExecState* exec, const ArgList& args) +JSValue RegExpObject::exec(ExecState* exec, const ArgList& args) { if (match(exec, args)) return exec->lexicalGlobalObject()->regExpConstructor()->arrayOfMatches(exec); return jsNull(); } -static JSValuePtr callRegExpObject(ExecState* exec, JSObject* function, JSValuePtr, const ArgList& args) +static JSValue JSC_HOST_CALL callRegExpObject(ExecState* exec, JSObject* function, JSValue, const ArgList& args) { return asRegExpObject(function)->exec(exec, args); } @@ -134,7 +135,7 @@ bool RegExpObject::match(ExecState* exec, const ArgList& args) { RegExpConstructor* regExpConstructor = exec->lexicalGlobalObject()->regExpConstructor(); - UString input = args.isEmpty() ? regExpConstructor->input() : args.at(exec, 0)->toString(exec); + UString input = args.isEmpty() ? regExpConstructor->input() : args.at(0).toString(exec); if (input.isNull()) { throwError(exec, GeneralError, "No input to " + toString(exec) + "."); return false; |