summaryrefslogtreecommitdiff
path: root/Source/JavaScriptCore/heap/CopiedBlock.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/JavaScriptCore/heap/CopiedBlock.h')
-rw-r--r--Source/JavaScriptCore/heap/CopiedBlock.h22
1 files changed, 18 insertions, 4 deletions
diff --git a/Source/JavaScriptCore/heap/CopiedBlock.h b/Source/JavaScriptCore/heap/CopiedBlock.h
index 387b2ddab..431b86c38 100644
--- a/Source/JavaScriptCore/heap/CopiedBlock.h
+++ b/Source/JavaScriptCore/heap/CopiedBlock.h
@@ -55,16 +55,30 @@ public:
#endif
}
- char* payload()
- {
- return reinterpret_cast<char*>(this) + ((sizeof(CopiedBlock) + 7) & ~7);
- }
+ char* payload();
+ size_t size();
+ size_t capacity();
private:
void* m_offset;
uintptr_t m_isPinned;
};
+inline char* CopiedBlock::payload()
+{
+ return reinterpret_cast<char*>(this) + ((sizeof(CopiedBlock) + 7) & ~7);
+}
+
+inline size_t CopiedBlock::size()
+{
+ return static_cast<size_t>(static_cast<char*>(m_offset) - payload());
+}
+
+inline size_t CopiedBlock::capacity()
+{
+ return m_allocation.size();
+}
+
} // namespace JSC
#endif