blob: b321ad1548ac1c3e8bfd8efad9bc0d4554791ea3 [file] [log] [blame]
// Copyright (c) 2020, 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.graph;
import com.android.tools.r8.errors.Unreachable;
import com.android.tools.r8.graph.GenericSignature.ClassSignature;
import com.android.tools.r8.graph.GenericSignature.ClassTypeSignature;
import com.android.tools.r8.graph.GenericSignature.FieldTypeSignature;
import com.android.tools.r8.graph.GenericSignature.FormalTypeParameter;
import com.android.tools.r8.graph.GenericSignature.MethodTypeSignature;
import com.android.tools.r8.graph.GenericSignature.ReturnType;
import com.android.tools.r8.graph.GenericSignature.TypeSignature;
import java.util.List;
public interface GenericSignatureVisitor {
default ClassSignature visitClassSignature(ClassSignature classSignature) {
throw new Unreachable("Implement if visited");
}
default MethodTypeSignature visitMethodSignature(MethodTypeSignature methodSignature) {
throw new Unreachable("Implement if visited");
}
default FieldTypeSignature visitFieldTypeSignature(FieldTypeSignature fieldSignature) {
throw new Unreachable("Implement if visited");
}
default List<FormalTypeParameter> visitFormalTypeParameters(
List<FormalTypeParameter> formalTypeParameters) {
throw new Unreachable("Implement if visited");
}
default FormalTypeParameter visitFormalTypeParameter(FormalTypeParameter formalTypeParameter) {
throw new Unreachable("Implement if visited");
}
default FieldTypeSignature visitClassBound(FieldTypeSignature fieldSignature) {
throw new Unreachable("Implement if visited");
}
default List<FieldTypeSignature> visitInterfaceBounds(List<FieldTypeSignature> fieldSignatures) {
throw new Unreachable("Implement if visited");
}
default FieldTypeSignature visitInterfaceBound(FieldTypeSignature fieldSignature) {
throw new Unreachable("Implement if visited");
}
default ClassTypeSignature visitSuperClass(ClassTypeSignature classTypeSignature) {
throw new Unreachable("Implement if visited");
}
default List<ClassTypeSignature> visitSuperInterfaces(
List<ClassTypeSignature> interfaceSignatures) {
throw new Unreachable("Implement if visited");
}
default ClassTypeSignature visitSuperInterface(ClassTypeSignature classTypeSignature) {
throw new Unreachable("Implement if visited");
}
default TypeSignature visitTypeSignature(TypeSignature typeSignature) {
throw new Unreachable("Implement if visited");
}
default ClassTypeSignature visitEnclosing(
ClassTypeSignature enclosingSignature, ClassTypeSignature enclosedSignature) {
throw new Unreachable("Implement if visited");
}
default ReturnType visitReturnType(ReturnType returnType) {
throw new Unreachable("Implement if visited");
}
default List<TypeSignature> visitMethodTypeSignatures(List<TypeSignature> typeSignatures) {
throw new Unreachable("Implement if visited");
}
default List<TypeSignature> visitThrowsSignatures(List<TypeSignature> typeSignatures) {
throw new Unreachable("Implement if visited");
}
default List<FieldTypeSignature> visitTypeArguments(
DexType type, List<FieldTypeSignature> typeArguments) {
throw new Unreachable("Implement if visited");
}
default DexType visitType(DexType type) {
throw new Unreachable("Implement if visited");
}
}