docs: def _skip_trampoline(handler):
      """Intercepts events from container handlers, emitting them only if they should not be skipped."""
      data_event, self = (yield None)
      delegate = handler
      event = None
      depth = 0
      while True:
          def pass_through():
              _trans = delegate.send(Transition(data_event, delegate))
              return _trans, _trans.delegate, _trans.event
  
          if data_event is not None and data_event.type is ReadEventType.SKIP:
              while True:
                  trans, delegate, event = pass_through()
                  if event is not None:
                      if event.event_type is IonEventType.CONTAINER_END and event.depth <= depth:
                          break
                  if event is None or event.event_type is IonEventType.INCOMPLETE:
                      data_event, _ = yield Transition(event, self)
          else:
              trans, delegate, event = pass_through()
              if event is not None and (event.event_type is IonEventType.CONTAINER_START or
                                        event.event_type is IonEventType.CONTAINER_END):
                  depth = event.depth
          data_event, _ = yield Transition(event, self)