simplify parameter objects slightly
[squeep-api-dingus] / lib / router / path-parameter.js
index 585aaec7500a3ccf3fd6c9529fdb288f817f14e8..3c6f1cb1f6e1c3a28129ee9bf0adbfe988192c05 100644 (file)
@@ -1,6 +1,5 @@
 'use strict';
 
-const kPathParameter = Symbol('kSqueepDingusRouterPathParameter');
 const parameters = new Map();
 /**
  * De-duplicating factory of minimal-objects to track the named-parameter parts of path definitions.
@@ -16,24 +15,17 @@ class PathParameter extends null {
       return parameters.get(parameter);
     }
     const pathParameter = Object.create(PathParameter.prototype);
-    pathParameter[kPathParameter] = parameter; // eslint-disable-line security/detect-object-injection
+    pathParameter.parameter = parameter;
     parameters.set(parameter, pathParameter);
     Object.freeze(pathParameter);
     return pathParameter;
   }
 
-  /**
-   * Return the parameter name.
-   */
-  get parameter() {
-    return this[kPathParameter];// eslint-disable-line security/detect-object-injection
-  }
-
   /**
    * @returns {String}
    */
   toString() {
-    return `{${this.constructor.name} ${this.parameter}}`; // eslint-disable-line security/detect-object-injection
+    return `{${this.constructor.name} ${this.parameter}}`;
   }
 
   /**
@@ -43,7 +35,6 @@ class PathParameter extends null {
     this.parameters.clear();
   }
 }
-PathParameter.kPathParameter = kPathParameter;
 PathParameter.parameters = parameters;
 
 module.exports = PathParameter;
\ No newline at end of file