summaryrefslogtreecommitdiffstats
path: root/toolkit/components/reflect/reflect.jsm
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 09:22:09 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 09:22:09 +0000
commit43a97878ce14b72f0981164f87f2e35e14151312 (patch)
tree620249daf56c0258faa40cbdcf9cfba06de2a846 /toolkit/components/reflect/reflect.jsm
parentInitial commit. (diff)
downloadfirefox-upstream.tar.xz
firefox-upstream.zip
Adding upstream version 110.0.1.upstream/110.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'toolkit/components/reflect/reflect.jsm')
-rw-r--r--toolkit/components/reflect/reflect.jsm28
1 files changed, 28 insertions, 0 deletions
diff --git a/toolkit/components/reflect/reflect.jsm b/toolkit/components/reflect/reflect.jsm
new file mode 100644
index 0000000000..cfdd208afd
--- /dev/null
+++ b/toolkit/components/reflect/reflect.jsm
@@ -0,0 +1,28 @@
+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+var EXPORTED_SYMBOLS = ["Reflect"];
+
+/*
+ * This is the js module for Reflect. Import it like so:
+ * const { Reflect } = ChromeUtils.import(
+ * "resource://gre/modules/reflect.jsm"
+ * );
+ *
+ * This will create a 'Reflect' object, which provides an interface to the
+ * SpiderMonkey parser API.
+ *
+ * For documentation on the API, see:
+ * https://developer.mozilla.org/en/SpiderMonkey/Parser_API
+ *
+ */
+
+// Initialize the ctypes object. You do not need to do this yourself.
+const init = Cc["@mozilla.org/jsreflect;1"].createInstance();
+init();
+
+// Reflect is a standard built-in defined on the shared global.
+// Export it via a lexical variable on the per-JSM global.
+const Reflect = globalThis.Reflect;