class_docstr: Implements the public st.cache_resource API: the @st.cache_resource decorator,
  and st.cache_resource.clear().
code: def __call__(
      self,
      func: F | None = None,
      *,
      ttl: float | timedelta | str | None = None,
      max_entries: int | None = None,
      show_spinner: bool | str = True,
      validate: ValidateFunc | None = None,
      experimental_allow_widgets: bool = False,
      hash_funcs: HashFuncsDict | None = None,
  ):
      return self._decorator(
          func,
          ttl=ttl,
          max_entries=max_entries,
          show_spinner=show_spinner,
          validate=validate,
          experimental_allow_widgets=experimental_allow_widgets,
          hash_funcs=hash_funcs,
      )
  
imports: from __future__ import annotations
  import math
  import threading
  import types
  from datetime import timedelta
  from typing import Any, Callable, TypeVar, cast, overload
  from cachetools import TTLCache
  from typing_extensions import TypeAlias
  import streamlit
  from streamlit.deprecation_util import show_deprecation_warning
  from streamlit.logger import get_logger
  from streamlit.runtime.caching import cache_utils
  from streamlit.runtime.caching.cache_errors import CacheKeyNotFoundError
  from streamlit.runtime.caching.cache_type import CacheType
  from streamlit.runtime.caching.cache_utils import Cache, CachedFuncInfo, make_cached_func_wrapper, ttl_to_seconds
  from streamlit.runtime.caching.cached_message_replay import CachedMessageReplayContext, CachedResult, ElementMsgData, MsgData, MultiCacheResults
  from streamlit.runtime.caching.hashing import HashFuncsDict
  from streamlit.runtime.metrics_util import gather_metrics
  from streamlit.runtime.scriptrunner.script_run_context import get_script_run_ctx
  from streamlit.runtime.stats import CacheStat, CacheStatsProvider, group_stats
  from streamlit.vendor.pympler.asizeof import asizeof
label_desc: Use image node_id 4 for calling the CacheResourceAPI obj's underlying member method code with example usage: obj.__call__(func) and returns: self