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-14 11:33:28 +0000
commit7d93d4989f49bfcb1aa6b87f81332332a750c49c (patch)
tree902bb1f380bbc98145df691536aa652b216c1bfe /js/src/vm/NativeObject.h
parente913687dc585606e50550ad77e2d8a744b5e6493 (diff)
downloadUXP-7d93d4989f49bfcb1aa6b87f81332332a750c49c.tar
UXP-7d93d4989f49bfcb1aa6b87f81332332a750c49c.tar.gz
UXP-7d93d4989f49bfcb1aa6b87f81332332a750c49c.tar.lz
UXP-7d93d4989f49bfcb1aa6b87f81332332a750c49c.tar.xz
UXP-7d93d4989f49bfcb1aa6b87f81332332a750c49c.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();
}