code: def check_valid_bound(value, name):
      """Checks that value is either unspecified, or a valid interval bound.
  
      Otherwise raises InvalidArgument.
      """
      if value is None or isinstance(value, (int, Rational)):
          return
      if not isinstance(value, (Real, decimal.Decimal)):
          raise InvalidArgument(
              f"{name}={value!r} must be a real number."
          )
      if math.isnan(value):
          raise InvalidArgument(f"Invalid end point {name}={value!r}")
  
file_path: catboost/contrib/python/hypothesis/py3/hypothesis/internal/validation.py
imports: import decimal
  import math
  from numbers import Rational, Real
  from hypothesis.errors import InvalidArgument
  from hypothesis.internal.coverage import check_function
label_desc: Use image node_id 3 for calling a global function with example usage: check_valid_bound(value, name) without return types