flags.js 649 B

12345678910111213141516171819202122
  1. /*
  2. * Create a writable property by tracking it with a private variable.
  3. * We cannot make a normal property writeable on `exports` because
  4. * the module system freezes it.
  5. */
  6. function makeWritableFlag(exports, name) {
  7. let flag = false;
  8. Object.defineProperty(exports, name, {
  9. get: function () { return flag; },
  10. set: function (state) { flag = state; }
  11. });
  12. }
  13. makeWritableFlag(exports, "wantLogging");
  14. makeWritableFlag(exports, "wantVerbose");
  15. // When the testing flag is set, various behaviors may be altered from
  16. // production mode, typically to enable easier testing or enhanced
  17. // debugging.
  18. makeWritableFlag(exports, "testing");