summaryrefslogtreecommitdiff
path: root/Source/JavaScriptCore/runtime/JSWrapperObject.h
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@lorry>2017-06-27 06:07:23 +0000
committerLorry Tar Creator <lorry-tar-importer@lorry>2017-06-27 06:07:23 +0000
commit1bf1084f2b10c3b47fd1a588d85d21ed0eb41d0c (patch)
tree46dcd36c86e7fbc6e5df36deb463b33e9967a6f7 /Source/JavaScriptCore/runtime/JSWrapperObject.h
parent32761a6cee1d0dee366b885b7b9c777e67885688 (diff)
downloadWebKitGtk-tarball-master.tar.gz
Diffstat (limited to 'Source/JavaScriptCore/runtime/JSWrapperObject.h')
-rw-r--r--Source/JavaScriptCore/runtime/JSWrapperObject.h92
1 files changed, 44 insertions, 48 deletions
diff --git a/Source/JavaScriptCore/runtime/JSWrapperObject.h b/Source/JavaScriptCore/runtime/JSWrapperObject.h
index 349c75e6a..7bc8b0b73 100644
--- a/Source/JavaScriptCore/runtime/JSWrapperObject.h
+++ b/Source/JavaScriptCore/runtime/JSWrapperObject.h
@@ -19,70 +19,66 @@
*
*/
-#ifndef JSWrapperObject_h
-#define JSWrapperObject_h
+#pragma once
#include "JSDestructibleObject.h"
namespace JSC {
- // This class is used as a base for classes such as String,
- // Number, Boolean and Date which are wrappers for primitive types.
- class JSWrapperObject : public JSDestructibleObject {
- public:
- typedef JSDestructibleObject Base;
+// This class is used as a base for classes such as String,
+// Number, Boolean and Date which are wrappers for primitive types.
+class JSWrapperObject : public JSDestructibleObject {
+public:
+ typedef JSDestructibleObject Base;
- static size_t allocationSize(size_t inlineCapacity)
- {
- ASSERT_UNUSED(inlineCapacity, !inlineCapacity);
- return sizeof(JSWrapperObject);
- }
+ static size_t allocationSize(size_t inlineCapacity)
+ {
+ ASSERT_UNUSED(inlineCapacity, !inlineCapacity);
+ return sizeof(JSWrapperObject);
+ }
- JSValue internalValue() const;
- void setInternalValue(VM&, JSValue);
+ JSValue internalValue() const;
+ void setInternalValue(VM&, JSValue);
+
+ static Structure* createStructure(VM& vm, JSGlobalObject* globalObject, JSValue prototype)
+ {
+ return Structure::create(vm, globalObject, prototype, TypeInfo(ObjectType, StructureFlags), info());
+ }
- static Structure* createStructure(VM& vm, JSGlobalObject* globalObject, JSValue prototype)
- {
- return Structure::create(vm, globalObject, prototype, TypeInfo(ObjectType, StructureFlags), info());
- }
-
- static ptrdiff_t internalValueOffset() { return OBJECT_OFFSETOF(JSWrapperObject, m_internalValue); }
- static ptrdiff_t internalValueCellOffset()
- {
+ static ptrdiff_t internalValueOffset() { return OBJECT_OFFSETOF(JSWrapperObject, m_internalValue); }
+ static ptrdiff_t internalValueCellOffset()
+ {
#if USE(JSVALUE64)
- return internalValueOffset();
+ return internalValueOffset();
#else
- return internalValueOffset() + OBJECT_OFFSETOF(EncodedValueDescriptor, asBits.payload);
+ return internalValueOffset() + OBJECT_OFFSETOF(EncodedValueDescriptor, asBits.payload);
#endif
- }
+ }
- protected:
- explicit JSWrapperObject(VM&, Structure*);
- static const unsigned StructureFlags = OverridesVisitChildren | Base::StructureFlags;
+protected:
+ explicit JSWrapperObject(VM&, Structure*);
- static void visitChildren(JSCell*, SlotVisitor&);
+ JS_EXPORT_PRIVATE static void visitChildren(JSCell*, SlotVisitor&);
- private:
- WriteBarrier<Unknown> m_internalValue;
- };
+private:
+ WriteBarrier<Unknown> m_internalValue;
+};
- inline JSWrapperObject::JSWrapperObject(VM& vm, Structure* structure)
- : JSDestructibleObject(vm, structure)
- {
- }
+inline JSWrapperObject::JSWrapperObject(VM& vm, Structure* structure)
+ : JSDestructibleObject(vm, structure)
+{
+}
- inline JSValue JSWrapperObject::internalValue() const
- {
- return m_internalValue.get();
- }
+inline JSValue JSWrapperObject::internalValue() const
+{
+ return m_internalValue.get();
+}
- inline void JSWrapperObject::setInternalValue(VM& vm, JSValue value)
- {
- ASSERT(value);
- ASSERT(!value.isObject());
- m_internalValue.set(vm, this, value);
- }
+inline void JSWrapperObject::setInternalValue(VM& vm, JSValue value)
+{
+ ASSERT(value);
+ ASSERT(!value.isObject());
+ m_internalValue.set(vm, this, value);
+}
} // namespace JSC
-
-#endif // JSWrapperObject_h