function checkStringTypeUnionValue(values, label, value) {
	  if (value == null) {
	    return;
	  }

	  if (values.indexOf(value) < 0) {
	    throw new ValueError(value + " is not a valid " + label + ".  Valid values are " + values + " or null/undefined.");
	  }
	}
Helper function used to build type union/enum run-time checkers.
@param values The list of allowed values.
@param label A string name for the type
@param value The value to test.
@throws ValueError: If the value is not in values nor `undefined`/`null`.