public interface com.sun.tools.javac.code.Type$Visitor<R, S>
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: com.sun.tools.javac.code.Type$Visitor
  super_class: java.lang.Object
{
  public abstract R visitClassType(com.sun.tools.javac.code.Type$ClassType, );
    descriptor: (Lcom/sun/tools/javac/code/Type$ClassType;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lcom/sun/tools/javac/code/Type$ClassType;TS;)TR;
    MethodParameters:
      Name  Flags
      t     
      s     

  public abstract R visitWildcardType(com.sun.tools.javac.code.Type$WildcardType, );
    descriptor: (Lcom/sun/tools/javac/code/Type$WildcardType;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lcom/sun/tools/javac/code/Type$WildcardType;TS;)TR;
    MethodParameters:
      Name  Flags
      t     
      s     

  public abstract R visitArrayType(com.sun.tools.javac.code.Type$ArrayType, );
    descriptor: (Lcom/sun/tools/javac/code/Type$ArrayType;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lcom/sun/tools/javac/code/Type$ArrayType;TS;)TR;
    MethodParameters:
      Name  Flags
      t     
      s     

  public abstract R visitMethodType(com.sun.tools.javac.code.Type$MethodType, );
    descriptor: (Lcom/sun/tools/javac/code/Type$MethodType;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lcom/sun/tools/javac/code/Type$MethodType;TS;)TR;
    MethodParameters:
      Name  Flags
      t     
      s     

  public abstract R visitPackageType(com.sun.tools.javac.code.Type$PackageType, );
    descriptor: (Lcom/sun/tools/javac/code/Type$PackageType;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lcom/sun/tools/javac/code/Type$PackageType;TS;)TR;
    MethodParameters:
      Name  Flags
      t     
      s     

  public abstract R visitModuleType(com.sun.tools.javac.code.Type$ModuleType, );
    descriptor: (Lcom/sun/tools/javac/code/Type$ModuleType;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lcom/sun/tools/javac/code/Type$ModuleType;TS;)TR;
    MethodParameters:
      Name  Flags
      t     
      s     

  public abstract R visitTypeVar(com.sun.tools.javac.code.Type$TypeVar, );
    descriptor: (Lcom/sun/tools/javac/code/Type$TypeVar;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lcom/sun/tools/javac/code/Type$TypeVar;TS;)TR;
    MethodParameters:
      Name  Flags
      t     
      s     

  public abstract R visitCapturedType(com.sun.tools.javac.code.Type$CapturedType, );
    descriptor: (Lcom/sun/tools/javac/code/Type$CapturedType;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lcom/sun/tools/javac/code/Type$CapturedType;TS;)TR;
    MethodParameters:
      Name  Flags
      t     
      s     

  public abstract R visitForAll(com.sun.tools.javac.code.Type$ForAll, );
    descriptor: (Lcom/sun/tools/javac/code/Type$ForAll;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lcom/sun/tools/javac/code/Type$ForAll;TS;)TR;
    MethodParameters:
      Name  Flags
      t     
      s     

  public abstract R visitUndetVar(com.sun.tools.javac.code.Type$UndetVar, );
    descriptor: (Lcom/sun/tools/javac/code/Type$UndetVar;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lcom/sun/tools/javac/code/Type$UndetVar;TS;)TR;
    MethodParameters:
      Name  Flags
      t     
      s     

  public abstract R visitErrorType(com.sun.tools.javac.code.Type$ErrorType, );
    descriptor: (Lcom/sun/tools/javac/code/Type$ErrorType;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lcom/sun/tools/javac/code/Type$ErrorType;TS;)TR;
    MethodParameters:
      Name  Flags
      t     
      s     

  public abstract R visitType(com.sun.tools.javac.code.Type, );
    descriptor: (Lcom/sun/tools/javac/code/Type;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lcom/sun/tools/javac/code/Type;TS;)TR;
    MethodParameters:
      Name  Flags
      t     
      s     
}
Signature: <R:Ljava/lang/Object;S:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "Type.java"
NestHost: com.sun.tools.javac.code.Type
InnerClasses:
  public ArrayType = com.sun.tools.javac.code.Type$ArrayType of com.sun.tools.javac.code.Type
  public CapturedType = com.sun.tools.javac.code.Type$CapturedType of com.sun.tools.javac.code.Type
  public ClassType = com.sun.tools.javac.code.Type$ClassType of com.sun.tools.javac.code.Type
  public ErrorType = com.sun.tools.javac.code.Type$ErrorType of com.sun.tools.javac.code.Type
  public ForAll = com.sun.tools.javac.code.Type$ForAll of com.sun.tools.javac.code.Type
  public MethodType = com.sun.tools.javac.code.Type$MethodType of com.sun.tools.javac.code.Type
  public ModuleType = com.sun.tools.javac.code.Type$ModuleType of com.sun.tools.javac.code.Type
  public PackageType = com.sun.tools.javac.code.Type$PackageType of com.sun.tools.javac.code.Type
  public TypeVar = com.sun.tools.javac.code.Type$TypeVar of com.sun.tools.javac.code.Type
  public UndetVar = com.sun.tools.javac.code.Type$UndetVar of com.sun.tools.javac.code.Type
  public abstract Visitor = com.sun.tools.javac.code.Type$Visitor of com.sun.tools.javac.code.Type
  public WildcardType = com.sun.tools.javac.code.Type$WildcardType of com.sun.tools.javac.code.Type