Mypal/devtools/shared/flags.js

22 lines
649 B
JavaScript

/*
* 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");