whole_func_string: function addNativeHtml5Validators(ctrl, validatorName, badFlags, ignoreFlags, validity) {
    if (isObject(validity)) {
      ctrl.$$hasNativeValidators = true;
      var validator = function(value) {
        // Don't overwrite previous validation, don't consider valueMissing to apply (ng-required can
        // perform the required validation)
        if (!ctrl.$error[validatorName] &&
            !testFlags(validity, ignoreFlags) &&
            testFlags(validity, badFlags)) {
          ctrl.$setValidity(validatorName, false);
          return;
        }
        return value;
      };
      ctrl.$parsers.push(validator);
    }
  }
func_code_string: function addNativeHtml5Validators(ctrl, validatorName, badFlags, ignoreFlags, validity) {
    if (isObject(validity)) {
      ctrl.$$hasNativeValidators = true;
      var validator = function(value) {
        // Don't overwrite previous validation, don't consider valueMissing to apply (ng-required can
        // perform the required validation)
        if (!ctrl.$error[validatorName] &&
            !testFlags(validity, ignoreFlags) &&
            testFlags(validity, badFlags)) {
          ctrl.$setValidity(validatorName, false);
          return;
        }
        return value;
      };
      ctrl.$parsers.push(validator);
    }
  }
func_documentation_string: Pass validity so that behaviour can be mocked easier.