summaryrefslogtreecommitdiff
path: root/Source/JavaScriptCore/runtime/IndexingHeader.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/JavaScriptCore/runtime/IndexingHeader.h')
-rw-r--r--Source/JavaScriptCore/runtime/IndexingHeader.h18
1 files changed, 9 insertions, 9 deletions
diff --git a/Source/JavaScriptCore/runtime/IndexingHeader.h b/Source/JavaScriptCore/runtime/IndexingHeader.h
index 27881297b..6a7f6873e 100644
--- a/Source/JavaScriptCore/runtime/IndexingHeader.h
+++ b/Source/JavaScriptCore/runtime/IndexingHeader.h
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2012 Apple Inc. All rights reserved.
+ * Copyright (C) 2012, 2014 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,11 +23,9 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#ifndef IndexingHeader_h
-#define IndexingHeader_h
+#pragma once
#include "PropertyStorage.h"
-#include <wtf/Platform.h>
namespace JSC {
@@ -63,7 +61,7 @@ public:
u.lengths.vectorLength = length;
}
- uint32_t publicLength() { return u.lengths.publicLength; }
+ uint32_t publicLength() const { return u.lengths.publicLength; }
void setPublicLength(uint32_t auxWord) { u.lengths.publicLength = auxWord; }
ArrayBuffer* arrayBuffer() { return u.typedArray.buffer; }
@@ -81,7 +79,12 @@ public:
static IndexingHeader* from(ArrayStorage* arrayStorage)
{
- return reinterpret_cast<IndexingHeader*>(arrayStorage) - 1;
+ return const_cast<IndexingHeader*>(from(const_cast<const ArrayStorage*>(arrayStorage)));
+ }
+
+ static const IndexingHeader* from(const ArrayStorage* arrayStorage)
+ {
+ return reinterpret_cast<const IndexingHeader*>(arrayStorage) - 1;
}
static IndexingHeader* fromEndOf(PropertyStorage propertyStorage)
@@ -130,6 +133,3 @@ private:
};
} // namespace JSC
-
-#endif // IndexingHeader_h
-