blob: ff7d330b0ba88df8b809b67faf4ef24e8b04f919 [file] [log] [blame]
// Copyright (c) 2021, the R8 project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
package com.android.tools.r8.retrace;
import com.android.tools.r8.Keep;
import java.util.List;
import java.util.function.Consumer;
import java.util.stream.Stream;
@Keep
public interface RetraceFrameElement extends RetraceElement<RetraceFrameResult> {
boolean isUnknown();
RetracedMethodReference getTopFrame();
RetraceClassElement getClassElement();
void forEach(Consumer<RetracedSingleFrame> consumer);
Stream<RetracedSingleFrame> stream();
void forEachRewritten(RetraceStackTraceContext context, Consumer<RetracedSingleFrame> consumer);
Stream<RetracedSingleFrame> streamRewritten(RetraceStackTraceContext context);
RetracedSourceFile getSourceFile(RetracedClassMemberReference frame);
List<? extends RetracedMethodReference> getOuterFrames();
RetraceStackTraceContext getRetraceStackTraceContext();
}