Ejemplo n.º 1
0
  @Override
  public Trace clone() {
    TraceElement<T> e0 = null, eLast = null;

    for (TraceElement<T> e = lastElement; e != null; e = e.prevElement) {
      TraceElement<T> ec = e.clone();

      if (eLast != null) {
        eLast.prevElement = ec;
        eLast = ec;
      } else {
        e0 = eLast = ec;
      }
    }

    Trace<T> t = new Trace<T>();
    t.lastElement = e0;

    return t;
  }