docs: function validate(validationFn) {
      return function (proto, setterName, descriptor) {
          if (!isFunction$$1(validationFn)) {
              throw TypeError("The @validate() decorator, " +
                  "applied to '" + setterName + "()', requires a " +
                  "valid validator function as parameter to be " +
                  "passed in.");
          }
          var boundFn = descriptor.value;
          descriptor.value = function setAttribute(value) {
              if (this._validate(value, validationFn)) {
                  return boundFn.call(this, value);
              }
          };
          return descriptor;
      };
  }