docs: def cycles_created_by(callable):
      """
      Return graph of cyclic garbage created by the given callable.
  
      Return an :class:`~refcycle.object_graph.ObjectGraph` representing those
      objects generated by the given callable that can't be collected by Python's
      usual reference-count based garbage collection.
  
      This includes objects that will eventually be collected by the cyclic
      garbage collector, as well as genuinely unreachable objects that will
      never be collected.
  
      `callable` should be a callable that takes no arguments; its return
      value (if any) will be ignored.
  
      """
      with restore_gc_state():
          gc.disable()
          gc.collect()
          gc.set_debug(gc.DEBUG_SAVEALL)
          callable()
          new_object_count = gc.collect()
          if new_object_count:
              objects = gc.garbage[-new_object_count:]
              del gc.garbage[-new_object_count:]
          else:
              objects = []
          return ObjectGraph(objects)