diff options
author | Konstantin Tokarev <annulen@yandex.ru> | 2016-08-25 19:20:41 +0300 |
---|---|---|
committer | Konstantin Tokarev <annulen@yandex.ru> | 2017-02-02 12:30:55 +0000 |
commit | 6882a04fb36642862b11efe514251d32070c3d65 (patch) | |
tree | b7959826000b061fd5ccc7512035c7478742f7b0 /Source/JavaScriptCore/runtime/MathObject.h | |
parent | ab6df191029eeeb0b0f16f127d553265659f739e (diff) | |
download | qtwebkit-6882a04fb36642862b11efe514251d32070c3d65.tar.gz |
Imported QtWebKit TP3 (git b57bc6801f1876c3220d5a4bfea33d620d477443)
Change-Id: I3b1d8a2808782c9f34d50240000e20cb38d3680f
Reviewed-by: Konstantin Tokarev <annulen@yandex.ru>
Diffstat (limited to 'Source/JavaScriptCore/runtime/MathObject.h')
-rw-r--r-- | Source/JavaScriptCore/runtime/MathObject.h | 55 |
1 files changed, 28 insertions, 27 deletions
diff --git a/Source/JavaScriptCore/runtime/MathObject.h b/Source/JavaScriptCore/runtime/MathObject.h index 190614b84..9d1c181c0 100644 --- a/Source/JavaScriptCore/runtime/MathObject.h +++ b/Source/JavaScriptCore/runtime/MathObject.h @@ -25,33 +25,34 @@ namespace JSC { - class MathObject : public JSNonFinalObject { - private: - MathObject(JSGlobalObject*, Structure*); - - public: - typedef JSNonFinalObject Base; - - static MathObject* create(ExecState* exec, JSGlobalObject* globalObject, Structure* structure) - { - MathObject* object = new (NotNull, allocateCell<MathObject>(*exec->heap())) MathObject(globalObject, structure); - object->finishCreation(exec, globalObject); - return object; - } - static bool getOwnPropertySlot(JSCell*, ExecState*, PropertyName, PropertySlot&); - static bool getOwnPropertyDescriptor(JSObject*, ExecState*, PropertyName, PropertyDescriptor&); - - static const ClassInfo s_info; - - static Structure* createStructure(VM& vm, JSGlobalObject* globalObject, JSValue prototype) - { - return Structure::create(vm, globalObject, prototype, TypeInfo(ObjectType, StructureFlags), &s_info); - } - - protected: - void finishCreation(ExecState*, JSGlobalObject*); - static const unsigned StructureFlags = OverridesGetOwnPropertySlot | JSObject::StructureFlags; - }; +class MathObject : public JSNonFinalObject { +private: + MathObject(VM&, Structure*); + +public: + typedef JSNonFinalObject Base; + static const unsigned StructureFlags = Base::StructureFlags | OverridesGetOwnPropertySlot; + + static MathObject* create(VM& vm, JSGlobalObject* globalObject, Structure* structure) + { + MathObject* object = new (NotNull, allocateCell<MathObject>(vm.heap)) MathObject(vm, structure); + object->finishCreation(vm, globalObject); + return object; + } + + DECLARE_INFO; + + static Structure* createStructure(VM& vm, JSGlobalObject* globalObject, JSValue prototype) + { + return Structure::create(vm, globalObject, prototype, TypeInfo(ObjectType, StructureFlags), info()); + } + +protected: + void finishCreation(VM&, JSGlobalObject*); +}; + +EncodedJSValue JSC_HOST_CALL mathProtoFuncAbs(ExecState*); +EncodedJSValue JSC_HOST_CALL mathProtoFuncFloor(ExecState*); } // namespace JSC |