code: protected final <T extends JavaElement> void pushActive(@Nullable T oldElement, @Nullable T newElement,
          Object... context) {
          ActiveElements<T> r = new ActiveElements<>(depth, oldElement, newElement, activations.peek(), context);
          activations.push(r);
      }
docs: If called in one of the {@code doVisit*()} methods, this method will push the elements along with some
  contextual
  data onto an internal stack.
  
  <p>You can then retrieve the contents on the top of the stack in your {@link #doEnd()} override by calling the
  {@link #popIfActive()} method.
  
  @param oldElement the old API element
  @param newElement the new API element
  @param context    optional contextual data
  @param <T>        the type of the elements