summaryrefslogtreecommitdiffstats
path: root/devtools/shared/flags.js
diff options
context:
space:
mode:
Diffstat (limited to 'devtools/shared/flags.js')
-rw-r--r--devtools/shared/flags.js21
1 files changed, 21 insertions, 0 deletions
diff --git a/devtools/shared/flags.js b/devtools/shared/flags.js
new file mode 100644
index 000000000..9903e6f50
--- /dev/null
+++ b/devtools/shared/flags.js
@@ -0,0 +1,21 @@
+
+/*
+ * Create a writable property by tracking it with a private variable.
+ * We cannot make a normal property writeable on `exports` because
+ * the module system freezes it.
+ */
+function makeWritableFlag(exports, name) {
+ let flag = false;
+ Object.defineProperty(exports, name, {
+ get: function () { return flag; },
+ set: function (state) { flag = state; }
+ });
+}
+
+makeWritableFlag(exports, "wantLogging");
+makeWritableFlag(exports, "wantVerbose");
+
+// When the testing flag is set, various behaviors may be altered from
+// production mode, typically to enable easier testing or enhanced
+// debugging.
+makeWritableFlag(exports, "testing");