class_docstr: Rate-limit a function (or other callable)
code: def __init__(self, func, max_rate=float("Inf")):
      if isinstance(func, Throttler):
          func = func.func
      self.func = func
      self.max_rate = max_rate
      self.reset()
  
imports: import functools
  import time
  import inspect
  import collections
  import types
  import itertools
  import warnings
  import pkg_resources.extern.more_itertools
  from typing import Callable, TypeVar
label_desc: Use image node_id 1 to create a new Throttler object  with example: obj = Throttler(func, max_rate)