code: def check_is_string_in_iterable(
      string_in, /, string_iterable, *, name="String"
  ):
      """Check if a given string is in an iterable of strings.
  
      Parameters
      ----------
      string_in : str
          String to check.
  
      string_iterable : Iterable[str, ...]
          Iterable containing only strings.
  
      name : str, default: "String"
          Variable name to use in the error messages if any are raised.
  
      Raises
      ------
      ValueError
          If the string is not in the iterable.
  
      See Also
      --------
      check_is_iterable
      check_is_string
      check_is_iterable_of_strings
  
      Examples
      --------
      Check if ``"A"`` is in a list of strings.
  
      >>> import pyvista.core.input_validation as valid
      >>> valid.check_is_string_in_iterable("A", ["A", "B", "C"])
  
      """
      check_is_string(string_in, name=name)
      check_is_iterable_of_strings(string_iterable)
      if string_in not in string_iterable:
          raise ValueError(
              f"{name} '{string_in}' is not in the iterable. "
              f"{name} must be one of: \n\t" + str(string_iterable)
          )
  
imports: from collections.abc import Iterable, Sequence
  from numbers import Number
  from typing import Tuple, Union, get_args, get_origin
  import numpy
  from pyvista.core.utilities.arrays import cast_to_ndarray
label_desc: Use image node_id 21 for calling a global function with example usage: check_is_string_in_iterable(string_iterable) without return types