summaryrefslogtreecommitdiff
path: root/js/src/jsscript.h
diff options
context:
space:
mode:
authorMoonchild <moonchild@palemoon.org>2020-11-27 15:47:49 +0000
committerMoonchild <moonchild@palemoon.org>2020-11-27 15:47:49 +0000
commit15914ec5780e7867ab508a48a83311c56950f8a9 (patch)
tree80562c8ff9e25d119fde8725fa89d171ef20bb42 /js/src/jsscript.h
parentb863bd2edc94c16498edc3274531f57fbfc30d3f (diff)
downloaduxp-15914ec5780e7867ab508a48a83311c56950f8a9.tar.gz
Issue #1691 - Part 1: Provide a way of associating a private value with a script
or module. This is a prerequisite for dynamic import
Diffstat (limited to 'js/src/jsscript.h')
-rw-r--r--js/src/jsscript.h20
1 files changed, 15 insertions, 5 deletions
diff --git a/js/src/jsscript.h b/js/src/jsscript.h
index d8d28ebebe..fd5c96a16d 100644
--- a/js/src/jsscript.h
+++ b/js/src/jsscript.h
@@ -638,12 +638,22 @@ class ScriptSourceObject : public NativeObject
return static_cast<JSScript*>(untyped);
}
+ void setPrivate(const Value& value) {
+ setReservedSlot(PRIVATE_SLOT, value);
+ }
+ Value getPrivate() const {
+ return getReservedSlot(PRIVATE_SLOT);
+ }
+
private:
- static const uint32_t SOURCE_SLOT = 0;
- static const uint32_t ELEMENT_SLOT = 1;
- static const uint32_t ELEMENT_PROPERTY_SLOT = 2;
- static const uint32_t INTRODUCTION_SCRIPT_SLOT = 3;
- static const uint32_t RESERVED_SLOTS = 4;
+ enum {
+ SOURCE_SLOT = 0,
+ ELEMENT_SLOT,
+ ELEMENT_PROPERTY_SLOT,
+ INTRODUCTION_SCRIPT_SLOT,
+ PRIVATE_SLOT,
+ RESERVED_SLOTS
+ };
};
enum GeneratorKind { NotGenerator, LegacyGenerator, StarGenerator };