diff options
Diffstat (limited to 'Source/JavaScriptCore/runtime/JSPromiseConstructor.h')
-rw-r--r-- | Source/JavaScriptCore/runtime/JSPromiseConstructor.h | 25 |
1 files changed, 9 insertions, 16 deletions
diff --git a/Source/JavaScriptCore/runtime/JSPromiseConstructor.h b/Source/JavaScriptCore/runtime/JSPromiseConstructor.h index 498bb8b56..0beca04e2 100644 --- a/Source/JavaScriptCore/runtime/JSPromiseConstructor.h +++ b/Source/JavaScriptCore/runtime/JSPromiseConstructor.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2013 Apple Inc. All rights reserved. + * Copyright (C) 2013, 2016 Apple Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -23,10 +23,7 @@ * THE POSSIBILITY OF SUCH DAMAGE. */ -#ifndef JSPromiseConstructor_h -#define JSPromiseConstructor_h - -#if ENABLE(PROMISES) +#pragma once #include "InternalFunction.h" @@ -34,31 +31,27 @@ namespace JSC { class JSPromise; class JSPromisePrototype; +class GetterSetter; class JSPromiseConstructor : public InternalFunction { public: typedef InternalFunction Base; + static const unsigned StructureFlags = Base::StructureFlags | HasStaticPropertyTable; - static JSPromiseConstructor* create(VM&, Structure*, JSPromisePrototype*); + static JSPromiseConstructor* create(VM&, Structure*, JSPromisePrototype*, GetterSetter* speciesSymbol); static Structure* createStructure(VM&, JSGlobalObject*, JSValue); DECLARE_INFO; protected: - void finishCreation(VM&, JSPromisePrototype*); - static const unsigned StructureFlags = OverridesGetOwnPropertySlot | InternalFunction::StructureFlags; + JSPromiseConstructor(VM&, Structure*); + void finishCreation(VM&, JSPromisePrototype*, GetterSetter*); private: - JSPromiseConstructor(VM&, Structure*); static ConstructType getConstructData(JSCell*, ConstructData&); static CallType getCallData(JSCell*, CallData&); - static bool getOwnPropertySlot(JSObject*, ExecState*, PropertyName, PropertySlot&); -}; -JSPromise* constructPromise(ExecState*, JSGlobalObject*, JSFunction*); + void addOwnInternalSlots(VM&, JSGlobalObject*); +}; } // namespace JSC - -#endif // ENABLE(PROMISES) - -#endif // JSPromiseConstructor_h |