code: function maybeGuardAttributeValue(
        elementName, attrName, getValue, valueExpression, onNewValue) {
        attrName = String(attrName).toLowerCase();
        const type = typeOfAttribute(elementName || '*', attrName, getValue);
        if (type === null) {
          distrust(`Cannot trust dynamic value for <${ elementName } ${ attrName }>`);
        } else {
          const guard = GUARDS_BY_ATTRIBUTE_TYPE[type];
          if (guard) {
            onNewValue(addGuard(guard, valueExpression));
          }
        }
      }
docs: Add a guard if necessary. - elementName: string - lower case - attrName: string - getValue(attrName) - returns the value of another attribute on the same element if known - valueExpression: string - a JS expression that computes the result - onNewValue(newValueExpression) - called with any newly guarded value expression. Not called if no guard required.