summaryrefslogtreecommitdiffstats
path: root/js/src/vm/NativeObject.h
diff options
context:
space:
mode:
authorwolfbeast <mcwerewolf@wolfbeast.com>2019-06-14 11:33:28 +0000
committerwolfbeast <mcwerewolf@wolfbeast.com>2019-06-18 10:26:28 +0000
commit85f9a95ddbc39a1b120eeb8280685e1ae40dc5dc (patch)
tree1794c8395d52ad64f6760a0c30fac7badd1bd052 /js/src/vm/NativeObject.h
parent8d2929313f6f8be66770f1137fa54a0825a3c768 (diff)
downloadUXP-85f9a95ddbc39a1b120eeb8280685e1ae40dc5dc.tar
UXP-85f9a95ddbc39a1b120eeb8280685e1ae40dc5dc.tar.gz
UXP-85f9a95ddbc39a1b120eeb8280685e1ae40dc5dc.tar.lz
UXP-85f9a95ddbc39a1b120eeb8280685e1ae40dc5dc.tar.xz
UXP-85f9a95ddbc39a1b120eeb8280685e1ae40dc5dc.zip
Replace SetOrExtendBoxedOrUnboxedDenseElements with direct calls.
Diffstat (limited to 'js/src/vm/NativeObject.h')
-rw-r--r--js/src/vm/NativeObject.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/js/src/vm/NativeObject.h b/js/src/vm/NativeObject.h
index 4dbc167ab..4957a01d2 100644
--- a/js/src/vm/NativeObject.h
+++ b/js/src/vm/NativeObject.h
@@ -349,6 +349,11 @@ enum class DenseElementResult {
Incomplete
};
+enum class ShouldUpdateTypes {
+ Update,
+ DontUpdate
+};
+
/*
* NativeObject specifies the internal implementation of a native object.
*
@@ -1147,6 +1152,10 @@ class NativeObject : public ShapedObject
elementsRangeWriteBarrierPost(dstStart, count);
}
+ inline DenseElementResult
+ setOrExtendDenseElements(JSContext* cx, uint32_t start, const Value* vp, uint32_t count,
+ ShouldUpdateTypes updateTypes = ShouldUpdateTypes::Update);
+
bool shouldConvertDoubleElements() {
return getElementsHeader()->shouldConvertDoubleElements();
}