1*af87fb4bSXin Li// Signature format: 2.0 2*af87fb4bSXin Lipackage com.google.devtools.ksp { 3*af87fb4bSXin Li 4*af87fb4bSXin Li @com.google.devtools.ksp.KspExperimental public final class KSTypeNotPresentException extends java.lang.RuntimeException { 5*af87fb4bSXin Li ctor public KSTypeNotPresentException(@NonNull com.google.devtools.ksp.symbol.KSType ksType, @NonNull Throwable cause); 6*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType getKsType(); 7*af87fb4bSXin Li property @NonNull public final com.google.devtools.ksp.symbol.KSType ksType; 8*af87fb4bSXin Li } 9*af87fb4bSXin Li 10*af87fb4bSXin Li @com.google.devtools.ksp.KspExperimental public final class KSTypesNotPresentException extends java.lang.RuntimeException { 11*af87fb4bSXin Li ctor public KSTypesNotPresentException(@NonNull java.util.List<? extends com.google.devtools.ksp.symbol.KSType> ksTypes, @NonNull Throwable cause); 12*af87fb4bSXin Li method @NonNull public java.util.List<com.google.devtools.ksp.symbol.KSType> getKsTypes(); 13*af87fb4bSXin Li property @NonNull public final java.util.List<com.google.devtools.ksp.symbol.KSType> ksTypes; 14*af87fb4bSXin Li } 15*af87fb4bSXin Li 16*af87fb4bSXin Li @kotlin.RequiresOptIn(message="This API is experimental." + "It may be changed in the future without notice or might be removed.") @kotlin.annotation.Retention(kotlin.annotation.AnnotationRetention) public @interface KspExperimental { 17*af87fb4bSXin Li } 18*af87fb4bSXin Li 19*af87fb4bSXin Li public final class UtilsKt { 20*af87fb4bSXin Li method @Nullable public static com.google.devtools.ksp.symbol.KSClassDeclaration closestClassDeclaration(@NonNull com.google.devtools.ksp.symbol.KSDeclaration); 21*af87fb4bSXin Li method @NonNull public static com.google.devtools.ksp.symbol.KSClassDeclaration findActualType(@NonNull com.google.devtools.ksp.symbol.KSTypeAlias); 22*af87fb4bSXin Li method @NonNull public static kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSType> getAllSuperTypes(@NonNull com.google.devtools.ksp.symbol.KSClassDeclaration); 23*af87fb4bSXin Li method @NonNull @com.google.devtools.ksp.KspExperimental public static <T extends java.lang.annotation.Annotation> kotlin.sequences.Sequence<T> getAnnotationsByType(@NonNull com.google.devtools.ksp.symbol.KSAnnotated, @NonNull kotlin.reflect.KClass<T> annotationKClass); 24*af87fb4bSXin Li method @Nullable public static com.google.devtools.ksp.symbol.KSClassDeclaration getClassDeclarationByName(@NonNull com.google.devtools.ksp.processing.Resolver, @NonNull String name); 25*af87fb4bSXin Li method public static inline <reified T> com.google.devtools.ksp.symbol.KSClassDeclaration getClassDeclarationByName(@NonNull com.google.devtools.ksp.processing.Resolver); 26*af87fb4bSXin Li method @NonNull public static kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSFunctionDeclaration> getConstructors(@NonNull com.google.devtools.ksp.symbol.KSClassDeclaration); 27*af87fb4bSXin Li method @Nullable public static com.google.devtools.ksp.symbol.KSFile getContainingFile(@NonNull com.google.devtools.ksp.symbol.KSNode); 28*af87fb4bSXin Li method @NonNull public static kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSFunctionDeclaration> getDeclaredFunctions(@NonNull com.google.devtools.ksp.symbol.KSClassDeclaration); 29*af87fb4bSXin Li method @NonNull public static kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSPropertyDeclaration> getDeclaredProperties(@NonNull com.google.devtools.ksp.symbol.KSClassDeclaration); 30*af87fb4bSXin Li method @NonNull public static kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSFunctionDeclaration> getFunctionDeclarationsByName(@NonNull com.google.devtools.ksp.processing.Resolver, @NonNull String name, boolean includeTopLevel = false); 31*af87fb4bSXin Li method @NonNull public static java.util.List<com.google.devtools.ksp.symbol.KSTypeArgument> getInnerArguments(@NonNull com.google.devtools.ksp.symbol.KSType); 32*af87fb4bSXin Li method @Nullable @com.google.devtools.ksp.KspExperimental public static com.google.devtools.ksp.symbol.KSClassDeclaration getJavaClassByName(@NonNull com.google.devtools.ksp.processing.Resolver, @NonNull com.google.devtools.ksp.symbol.KSName name); 33*af87fb4bSXin Li method @Nullable @com.google.devtools.ksp.KspExperimental public static com.google.devtools.ksp.symbol.KSClassDeclaration getJavaClassByName(@NonNull com.google.devtools.ksp.processing.Resolver, @NonNull String name); 34*af87fb4bSXin Li method @Nullable @com.google.devtools.ksp.KspExperimental public static com.google.devtools.ksp.symbol.KSClassDeclaration getKotlinClassByName(@NonNull com.google.devtools.ksp.processing.Resolver, @NonNull com.google.devtools.ksp.symbol.KSName name); 35*af87fb4bSXin Li method @Nullable @com.google.devtools.ksp.KspExperimental public static com.google.devtools.ksp.symbol.KSClassDeclaration getKotlinClassByName(@NonNull com.google.devtools.ksp.processing.Resolver, @NonNull String name); 36*af87fb4bSXin Li method @Nullable public static com.google.devtools.ksp.symbol.KSType getOuterType(@NonNull com.google.devtools.ksp.symbol.KSType); 37*af87fb4bSXin Li method @Nullable public static com.google.devtools.ksp.symbol.KSPropertyDeclaration getPropertyDeclarationByName(@NonNull com.google.devtools.ksp.processing.Resolver, @NonNull String name, boolean includeTopLevel = false); 38*af87fb4bSXin Li method @NonNull public static com.google.devtools.ksp.symbol.Visibility getVisibility(@NonNull com.google.devtools.ksp.symbol.KSDeclaration); 39*af87fb4bSXin Li method public static boolean isAbstract(@NonNull com.google.devtools.ksp.symbol.KSClassDeclaration); 40*af87fb4bSXin Li method public static boolean isAbstract(@NonNull com.google.devtools.ksp.symbol.KSPropertyDeclaration); 41*af87fb4bSXin Li method @com.google.devtools.ksp.KspExperimental public static <T extends java.lang.annotation.Annotation> boolean isAnnotationPresent(@NonNull com.google.devtools.ksp.symbol.KSAnnotated, @NonNull kotlin.reflect.KClass<T> annotationKClass); 42*af87fb4bSXin Li method public static boolean isConstructor(@NonNull com.google.devtools.ksp.symbol.KSFunctionDeclaration); 43*af87fb4bSXin Li method public static boolean isDefault(@NonNull com.google.devtools.ksp.symbol.KSValueArgument); 44*af87fb4bSXin Li method public static boolean isInternal(@NonNull com.google.devtools.ksp.symbol.KSDeclaration); 45*af87fb4bSXin Li method public static boolean isJavaPackagePrivate(@NonNull com.google.devtools.ksp.symbol.KSDeclaration); 46*af87fb4bSXin Li method public static boolean isLocal(@NonNull com.google.devtools.ksp.symbol.KSDeclaration); 47*af87fb4bSXin Li method public static boolean isOpen(@NonNull com.google.devtools.ksp.symbol.KSDeclaration); 48*af87fb4bSXin Li method public static boolean isPrivate(@NonNull com.google.devtools.ksp.symbol.KSDeclaration); 49*af87fb4bSXin Li method public static boolean isProtected(@NonNull com.google.devtools.ksp.symbol.KSDeclaration); 50*af87fb4bSXin Li method public static boolean isPublic(@NonNull com.google.devtools.ksp.symbol.KSDeclaration); 51*af87fb4bSXin Li method public static boolean isVisibleFrom(@NonNull com.google.devtools.ksp.symbol.KSDeclaration, @NonNull com.google.devtools.ksp.symbol.KSDeclaration other); 52*af87fb4bSXin Li method public static boolean validate(@NonNull com.google.devtools.ksp.symbol.KSNode, @NonNull kotlin.jvm.functions.Function2<? super com.google.devtools.ksp.symbol.KSNode,? super com.google.devtools.ksp.symbol.KSNode,java.lang.Boolean> predicate = { _, _ -> return true }); 53*af87fb4bSXin Li field @NonNull public static final String ExceptionMessage = "please file a bug at https://github.com/google/ksp/issues/new"; 54*af87fb4bSXin Li } 55*af87fb4bSXin Li 56*af87fb4bSXin Li} 57*af87fb4bSXin Li 58*af87fb4bSXin Lipackage com.google.devtools.ksp.processing { 59*af87fb4bSXin Li 60*af87fb4bSXin Li public interface CodeGenerator { 61*af87fb4bSXin Li method public void associate(@NonNull java.util.List<? extends com.google.devtools.ksp.symbol.KSFile> sources, @NonNull String packageName, @NonNull String fileName, @NonNull String extensionName = "kt"); 62*af87fb4bSXin Li method public void associateByPath(@NonNull java.util.List<? extends com.google.devtools.ksp.symbol.KSFile> sources, @NonNull String path, @NonNull String extensionName = "kt"); 63*af87fb4bSXin Li method public void associateWithClasses(@NonNull java.util.List<? extends com.google.devtools.ksp.symbol.KSClassDeclaration> classes, @NonNull String packageName, @NonNull String fileName, @NonNull String extensionName = "kt"); 64*af87fb4bSXin Li method @NonNull public java.io.OutputStream createNewFile(@NonNull com.google.devtools.ksp.processing.Dependencies dependencies, @NonNull String packageName, @NonNull String fileName, @NonNull String extensionName = "kt"); 65*af87fb4bSXin Li method @NonNull public java.io.OutputStream createNewFileByPath(@NonNull com.google.devtools.ksp.processing.Dependencies dependencies, @NonNull String path, @NonNull String extensionName = "kt"); 66*af87fb4bSXin Li method @NonNull public java.util.Collection<java.io.File> getGeneratedFile(); 67*af87fb4bSXin Li property @NonNull public abstract java.util.Collection<java.io.File> generatedFile; 68*af87fb4bSXin Li } 69*af87fb4bSXin Li 70*af87fb4bSXin Li public final class Dependencies { 71*af87fb4bSXin Li ctor public Dependencies(boolean aggregating, @NonNull com.google.devtools.ksp.symbol.KSFile... sources); 72*af87fb4bSXin Li method public boolean getAggregating(); 73*af87fb4bSXin Li method @NonNull public java.util.List<com.google.devtools.ksp.symbol.KSFile> getOriginatingFiles(); 74*af87fb4bSXin Li method public boolean isAllSources(); 75*af87fb4bSXin Li property public final boolean aggregating; 76*af87fb4bSXin Li property public final boolean isAllSources; 77*af87fb4bSXin Li property @NonNull public final java.util.List<com.google.devtools.ksp.symbol.KSFile> originatingFiles; 78*af87fb4bSXin Li field @NonNull public static final com.google.devtools.ksp.processing.Dependencies.Companion Companion; 79*af87fb4bSXin Li } 80*af87fb4bSXin Li 81*af87fb4bSXin Li public static final class Dependencies.Companion { 82*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.processing.Dependencies getALL_FILES(); 83*af87fb4bSXin Li property @NonNull public final com.google.devtools.ksp.processing.Dependencies ALL_FILES; 84*af87fb4bSXin Li } 85*af87fb4bSXin Li 86*af87fb4bSXin Li public interface JsPlatformInfo extends com.google.devtools.ksp.processing.PlatformInfo { 87*af87fb4bSXin Li } 88*af87fb4bSXin Li 89*af87fb4bSXin Li public interface JvmPlatformInfo extends com.google.devtools.ksp.processing.PlatformInfo { 90*af87fb4bSXin Li method @NonNull public String getJvmTarget(); 91*af87fb4bSXin Li property @NonNull public abstract String jvmTarget; 92*af87fb4bSXin Li } 93*af87fb4bSXin Li 94*af87fb4bSXin Li public interface KSBuiltIns { 95*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType getAnnotationType(); 96*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType getAnyType(); 97*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType getArrayType(); 98*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType getBooleanType(); 99*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType getByteType(); 100*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType getCharType(); 101*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType getDoubleType(); 102*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType getFloatType(); 103*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType getIntType(); 104*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType getIterableType(); 105*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType getLongType(); 106*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType getNothingType(); 107*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType getNumberType(); 108*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType getShortType(); 109*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType getStringType(); 110*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType getUnitType(); 111*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSType annotationType; 112*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSType anyType; 113*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSType arrayType; 114*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSType booleanType; 115*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSType byteType; 116*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSType charType; 117*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSType doubleType; 118*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSType floatType; 119*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSType intType; 120*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSType iterableType; 121*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSType longType; 122*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSType nothingType; 123*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSType numberType; 124*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSType shortType; 125*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSType stringType; 126*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSType unitType; 127*af87fb4bSXin Li } 128*af87fb4bSXin Li 129*af87fb4bSXin Li public interface KSPLogger { 130*af87fb4bSXin Li method public void error(@NonNull String message, @Nullable com.google.devtools.ksp.symbol.KSNode symbol = null); 131*af87fb4bSXin Li method public void exception(@NonNull Throwable e); 132*af87fb4bSXin Li method public void info(@NonNull String message, @Nullable com.google.devtools.ksp.symbol.KSNode symbol = null); 133*af87fb4bSXin Li method public void logging(@NonNull String message, @Nullable com.google.devtools.ksp.symbol.KSNode symbol = null); 134*af87fb4bSXin Li method public void warn(@NonNull String message, @Nullable com.google.devtools.ksp.symbol.KSNode symbol = null); 135*af87fb4bSXin Li } 136*af87fb4bSXin Li 137*af87fb4bSXin Li public interface NativePlatformInfo extends com.google.devtools.ksp.processing.PlatformInfo { 138*af87fb4bSXin Li method @NonNull public String getTargetName(); 139*af87fb4bSXin Li property @NonNull public abstract String targetName; 140*af87fb4bSXin Li } 141*af87fb4bSXin Li 142*af87fb4bSXin Li public interface PlatformInfo { 143*af87fb4bSXin Li method @NonNull public String getPlatformName(); 144*af87fb4bSXin Li property @NonNull public abstract String platformName; 145*af87fb4bSXin Li } 146*af87fb4bSXin Li 147*af87fb4bSXin Li public interface Resolver { 148*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSTypeReference createKSTypeReferenceFromKSType(@NonNull com.google.devtools.ksp.symbol.KSType type); 149*af87fb4bSXin Li method @NonNull @com.google.devtools.ksp.KspExperimental public java.util.Set<com.google.devtools.ksp.symbol.Modifier> effectiveJavaModifiers(@NonNull com.google.devtools.ksp.symbol.KSDeclaration declaration); 150*af87fb4bSXin Li method @NonNull public kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSFile> getAllFiles(); 151*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.processing.KSBuiltIns getBuiltIns(); 152*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSClassDeclaration getClassDeclarationByName(@NonNull com.google.devtools.ksp.symbol.KSName name); 153*af87fb4bSXin Li method @NonNull @com.google.devtools.ksp.KspExperimental public kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSDeclaration> getDeclarationsFromPackage(@NonNull String packageName); 154*af87fb4bSXin Li method @NonNull @com.google.devtools.ksp.KspExperimental public kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSDeclaration> getDeclarationsInSourceOrder(@NonNull com.google.devtools.ksp.symbol.KSDeclarationContainer container); 155*af87fb4bSXin Li method @NonNull public kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSFunctionDeclaration> getFunctionDeclarationsByName(@NonNull com.google.devtools.ksp.symbol.KSName name, boolean includeTopLevel = false); 156*af87fb4bSXin Li method @NonNull @com.google.devtools.ksp.KspExperimental public com.google.devtools.ksp.symbol.KSTypeReference getJavaWildcard(@NonNull com.google.devtools.ksp.symbol.KSTypeReference reference); 157*af87fb4bSXin Li method @NonNull @com.google.devtools.ksp.KspExperimental public kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSType> getJvmCheckedException(@NonNull com.google.devtools.ksp.symbol.KSFunctionDeclaration function); 158*af87fb4bSXin Li method @NonNull @com.google.devtools.ksp.KspExperimental public kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSType> getJvmCheckedException(@NonNull com.google.devtools.ksp.symbol.KSPropertyAccessor accessor); 159*af87fb4bSXin Li method @Nullable @com.google.devtools.ksp.KspExperimental public String getJvmName(@NonNull com.google.devtools.ksp.symbol.KSFunctionDeclaration declaration); 160*af87fb4bSXin Li method @Nullable @com.google.devtools.ksp.KspExperimental public String getJvmName(@NonNull com.google.devtools.ksp.symbol.KSPropertyAccessor accessor); 161*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSName getKSNameFromString(@NonNull String name); 162*af87fb4bSXin Li method @NonNull public kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSFile> getNewFiles(); 163*af87fb4bSXin Li method @Nullable @com.google.devtools.ksp.KspExperimental public String getOwnerJvmClassName(@NonNull com.google.devtools.ksp.symbol.KSPropertyDeclaration declaration); 164*af87fb4bSXin Li method @Nullable @com.google.devtools.ksp.KspExperimental public String getOwnerJvmClassName(@NonNull com.google.devtools.ksp.symbol.KSFunctionDeclaration declaration); 165*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSPropertyDeclaration getPropertyDeclarationByName(@NonNull com.google.devtools.ksp.symbol.KSName name, boolean includeTopLevel = false); 166*af87fb4bSXin Li method @NonNull public kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSAnnotated> getSymbolsWithAnnotation(@NonNull String annotationName, boolean inDepth = false); 167*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSTypeArgument getTypeArgument(@NonNull com.google.devtools.ksp.symbol.KSTypeReference typeRef, @NonNull com.google.devtools.ksp.symbol.Variance variance); 168*af87fb4bSXin Li method @com.google.devtools.ksp.KspExperimental public boolean isJavaRawType(@NonNull com.google.devtools.ksp.symbol.KSType type); 169*af87fb4bSXin Li method @Nullable @com.google.devtools.ksp.KspExperimental public com.google.devtools.ksp.symbol.KSName mapJavaNameToKotlin(@NonNull com.google.devtools.ksp.symbol.KSName javaName); 170*af87fb4bSXin Li method @Nullable @com.google.devtools.ksp.KspExperimental public com.google.devtools.ksp.symbol.KSName mapKotlinNameToJava(@NonNull com.google.devtools.ksp.symbol.KSName kotlinName); 171*af87fb4bSXin Li method @Nullable @com.google.devtools.ksp.KspExperimental public String mapToJvmSignature(@NonNull com.google.devtools.ksp.symbol.KSDeclaration declaration); 172*af87fb4bSXin Li method public boolean overrides(@NonNull com.google.devtools.ksp.symbol.KSDeclaration overrider, @NonNull com.google.devtools.ksp.symbol.KSDeclaration overridee); 173*af87fb4bSXin Li method public boolean overrides(@NonNull com.google.devtools.ksp.symbol.KSDeclaration overrider, @NonNull com.google.devtools.ksp.symbol.KSDeclaration overridee, @NonNull com.google.devtools.ksp.symbol.KSClassDeclaration containingClass); 174*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.processing.KSBuiltIns builtIns; 175*af87fb4bSXin Li } 176*af87fb4bSXin Li 177*af87fb4bSXin Li public interface SymbolProcessor { 178*af87fb4bSXin Li method public default void finish(); 179*af87fb4bSXin Li method public default void onError(); 180*af87fb4bSXin Li method @NonNull public java.util.List<com.google.devtools.ksp.symbol.KSAnnotated> process(@NonNull com.google.devtools.ksp.processing.Resolver resolver); 181*af87fb4bSXin Li } 182*af87fb4bSXin Li 183*af87fb4bSXin Li public final class SymbolProcessorEnvironment { 184*af87fb4bSXin Li ctor public SymbolProcessorEnvironment(@NonNull java.util.Map<java.lang.String,java.lang.String> options, @NonNull kotlin.KotlinVersion kotlinVersion, @NonNull com.google.devtools.ksp.processing.CodeGenerator codeGenerator, @NonNull com.google.devtools.ksp.processing.KSPLogger logger, @NonNull kotlin.KotlinVersion apiVersion, @NonNull kotlin.KotlinVersion compilerVersion, @NonNull java.util.List<? extends com.google.devtools.ksp.processing.PlatformInfo> platforms); 185*af87fb4bSXin Li ctor public SymbolProcessorEnvironment(@NonNull java.util.Map<java.lang.String,java.lang.String> options, @NonNull kotlin.KotlinVersion kotlinVersion, @NonNull com.google.devtools.ksp.processing.CodeGenerator codeGenerator, @NonNull com.google.devtools.ksp.processing.KSPLogger logger); 186*af87fb4bSXin Li method @NonNull public kotlin.KotlinVersion getApiVersion(); 187*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.processing.CodeGenerator getCodeGenerator(); 188*af87fb4bSXin Li method @NonNull public kotlin.KotlinVersion getCompilerVersion(); 189*af87fb4bSXin Li method @NonNull public kotlin.KotlinVersion getKotlinVersion(); 190*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.processing.KSPLogger getLogger(); 191*af87fb4bSXin Li method @NonNull public java.util.Map<java.lang.String,java.lang.String> getOptions(); 192*af87fb4bSXin Li method @NonNull public java.util.List<com.google.devtools.ksp.processing.PlatformInfo> getPlatforms(); 193*af87fb4bSXin Li property @NonNull public final kotlin.KotlinVersion apiVersion; 194*af87fb4bSXin Li property @NonNull public final com.google.devtools.ksp.processing.CodeGenerator codeGenerator; 195*af87fb4bSXin Li property @NonNull public final kotlin.KotlinVersion compilerVersion; 196*af87fb4bSXin Li property @NonNull public final kotlin.KotlinVersion kotlinVersion; 197*af87fb4bSXin Li property @NonNull public final com.google.devtools.ksp.processing.KSPLogger logger; 198*af87fb4bSXin Li property @NonNull public final java.util.Map<java.lang.String,java.lang.String> options; 199*af87fb4bSXin Li property @NonNull public final java.util.List<com.google.devtools.ksp.processing.PlatformInfo> platforms; 200*af87fb4bSXin Li } 201*af87fb4bSXin Li 202*af87fb4bSXin Li public fun interface SymbolProcessorProvider { 203*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.processing.SymbolProcessor create(@NonNull com.google.devtools.ksp.processing.SymbolProcessorEnvironment environment); 204*af87fb4bSXin Li } 205*af87fb4bSXin Li 206*af87fb4bSXin Li public interface UnknownPlatformInfo extends com.google.devtools.ksp.processing.PlatformInfo { 207*af87fb4bSXin Li } 208*af87fb4bSXin Li 209*af87fb4bSXin Li} 210*af87fb4bSXin Li 211*af87fb4bSXin Lipackage com.google.devtools.ksp.symbol { 212*af87fb4bSXin Li 213*af87fb4bSXin Li public enum AnnotationUseSiteTarget { 214*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.AnnotationUseSiteTarget DELEGATE; 215*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.AnnotationUseSiteTarget FIELD; 216*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.AnnotationUseSiteTarget FILE; 217*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.AnnotationUseSiteTarget GET; 218*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.AnnotationUseSiteTarget PARAM; 219*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.AnnotationUseSiteTarget PROPERTY; 220*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.AnnotationUseSiteTarget RECEIVER; 221*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.AnnotationUseSiteTarget SET; 222*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.AnnotationUseSiteTarget SETPARAM; 223*af87fb4bSXin Li } 224*af87fb4bSXin Li 225*af87fb4bSXin Li public enum ClassKind { 226*af87fb4bSXin Li method public final String getType(); 227*af87fb4bSXin Li property public final String type; 228*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.ClassKind ANNOTATION_CLASS; 229*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.ClassKind CLASS; 230*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.ClassKind ENUM_CLASS; 231*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.ClassKind ENUM_ENTRY; 232*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.ClassKind INTERFACE; 233*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.ClassKind OBJECT; 234*af87fb4bSXin Li } 235*af87fb4bSXin Li 236*af87fb4bSXin Li public final class FileLocation extends com.google.devtools.ksp.symbol.Location { 237*af87fb4bSXin Li ctor public FileLocation(@NonNull String filePath, int lineNumber); 238*af87fb4bSXin Li method @NonNull public String component1(); 239*af87fb4bSXin Li method public int component2(); 240*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.FileLocation copy(@NonNull String filePath, int lineNumber); 241*af87fb4bSXin Li method @NonNull public String getFilePath(); 242*af87fb4bSXin Li method public int getLineNumber(); 243*af87fb4bSXin Li property @NonNull public final String filePath; 244*af87fb4bSXin Li property public final int lineNumber; 245*af87fb4bSXin Li } 246*af87fb4bSXin Li 247*af87fb4bSXin Li public enum FunctionKind { 248*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.FunctionKind ANONYMOUS; 249*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.FunctionKind LAMBDA; 250*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.FunctionKind MEMBER; 251*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.FunctionKind STATIC; 252*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.FunctionKind TOP_LEVEL; 253*af87fb4bSXin Li } 254*af87fb4bSXin Li 255*af87fb4bSXin Li public interface KSAnnotated extends com.google.devtools.ksp.symbol.KSNode { 256*af87fb4bSXin Li method @NonNull public kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSAnnotation> getAnnotations(); 257*af87fb4bSXin Li property @NonNull public abstract kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSAnnotation> annotations; 258*af87fb4bSXin Li } 259*af87fb4bSXin Li 260*af87fb4bSXin Li public interface KSAnnotation extends com.google.devtools.ksp.symbol.KSNode { 261*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSTypeReference getAnnotationType(); 262*af87fb4bSXin Li method @NonNull public java.util.List<com.google.devtools.ksp.symbol.KSValueArgument> getArguments(); 263*af87fb4bSXin Li method @NonNull public java.util.List<com.google.devtools.ksp.symbol.KSValueArgument> getDefaultArguments(); 264*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSName getShortName(); 265*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.AnnotationUseSiteTarget getUseSiteTarget(); 266*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSTypeReference annotationType; 267*af87fb4bSXin Li property @NonNull public abstract java.util.List<com.google.devtools.ksp.symbol.KSValueArgument> arguments; 268*af87fb4bSXin Li property @NonNull public abstract java.util.List<com.google.devtools.ksp.symbol.KSValueArgument> defaultArguments; 269*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSName shortName; 270*af87fb4bSXin Li property @Nullable public abstract com.google.devtools.ksp.symbol.AnnotationUseSiteTarget useSiteTarget; 271*af87fb4bSXin Li } 272*af87fb4bSXin Li 273*af87fb4bSXin Li public interface KSCallableReference extends com.google.devtools.ksp.symbol.KSReferenceElement { 274*af87fb4bSXin Li method public default <D, R> R accept(@NonNull com.google.devtools.ksp.symbol.KSVisitor<D,R> visitor, @Nullable D data); 275*af87fb4bSXin Li method @NonNull public java.util.List<com.google.devtools.ksp.symbol.KSValueParameter> getFunctionParameters(); 276*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSTypeReference getReceiverType(); 277*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSTypeReference getReturnType(); 278*af87fb4bSXin Li property @NonNull public abstract java.util.List<com.google.devtools.ksp.symbol.KSValueParameter> functionParameters; 279*af87fb4bSXin Li property @Nullable public abstract com.google.devtools.ksp.symbol.KSTypeReference receiverType; 280*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSTypeReference returnType; 281*af87fb4bSXin Li } 282*af87fb4bSXin Li 283*af87fb4bSXin Li public interface KSClassDeclaration extends com.google.devtools.ksp.symbol.KSDeclaration com.google.devtools.ksp.symbol.KSDeclarationContainer { 284*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType asStarProjectedType(); 285*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType asType(@NonNull java.util.List<? extends com.google.devtools.ksp.symbol.KSTypeArgument> typeArguments); 286*af87fb4bSXin Li method @NonNull public kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSFunctionDeclaration> getAllFunctions(); 287*af87fb4bSXin Li method @NonNull public kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSPropertyDeclaration> getAllProperties(); 288*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.ClassKind getClassKind(); 289*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSFunctionDeclaration getPrimaryConstructor(); 290*af87fb4bSXin Li method @NonNull public kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSClassDeclaration> getSealedSubclasses(); 291*af87fb4bSXin Li method @NonNull public kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSTypeReference> getSuperTypes(); 292*af87fb4bSXin Li method public boolean isCompanionObject(); 293*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.ClassKind classKind; 294*af87fb4bSXin Li property public abstract boolean isCompanionObject; 295*af87fb4bSXin Li property @Nullable public abstract com.google.devtools.ksp.symbol.KSFunctionDeclaration primaryConstructor; 296*af87fb4bSXin Li property @NonNull public abstract kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSTypeReference> superTypes; 297*af87fb4bSXin Li } 298*af87fb4bSXin Li 299*af87fb4bSXin Li public interface KSClassifierReference extends com.google.devtools.ksp.symbol.KSReferenceElement { 300*af87fb4bSXin Li method public default <D, R> R accept(@NonNull com.google.devtools.ksp.symbol.KSVisitor<D,R> visitor, @Nullable D data); 301*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSClassifierReference getQualifier(); 302*af87fb4bSXin Li method @NonNull public String referencedName(); 303*af87fb4bSXin Li property @Nullable public abstract com.google.devtools.ksp.symbol.KSClassifierReference qualifier; 304*af87fb4bSXin Li } 305*af87fb4bSXin Li 306*af87fb4bSXin Li public interface KSDeclaration extends com.google.devtools.ksp.symbol.KSModifierListOwner com.google.devtools.ksp.symbol.KSAnnotated com.google.devtools.ksp.symbol.KSExpectActual { 307*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSFile getContainingFile(); 308*af87fb4bSXin Li method @Nullable public String getDocString(); 309*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSName getPackageName(); 310*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSDeclaration getParentDeclaration(); 311*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSName getQualifiedName(); 312*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSName getSimpleName(); 313*af87fb4bSXin Li method @NonNull public java.util.List<com.google.devtools.ksp.symbol.KSTypeParameter> getTypeParameters(); 314*af87fb4bSXin Li property @Nullable public abstract com.google.devtools.ksp.symbol.KSFile containingFile; 315*af87fb4bSXin Li property @Nullable public abstract String docString; 316*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSName packageName; 317*af87fb4bSXin Li property @Nullable public abstract com.google.devtools.ksp.symbol.KSDeclaration parentDeclaration; 318*af87fb4bSXin Li property @Nullable public abstract com.google.devtools.ksp.symbol.KSName qualifiedName; 319*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSName simpleName; 320*af87fb4bSXin Li property @NonNull public abstract java.util.List<com.google.devtools.ksp.symbol.KSTypeParameter> typeParameters; 321*af87fb4bSXin Li } 322*af87fb4bSXin Li 323*af87fb4bSXin Li public interface KSDeclarationContainer extends com.google.devtools.ksp.symbol.KSNode { 324*af87fb4bSXin Li method @NonNull public kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSDeclaration> getDeclarations(); 325*af87fb4bSXin Li property @NonNull public abstract kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSDeclaration> declarations; 326*af87fb4bSXin Li } 327*af87fb4bSXin Li 328*af87fb4bSXin Li public interface KSDefNonNullReference extends com.google.devtools.ksp.symbol.KSReferenceElement { 329*af87fb4bSXin Li method public default <D, R> R accept(@NonNull com.google.devtools.ksp.symbol.KSVisitor<D,R> visitor, @Nullable D data); 330*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSClassifierReference getEnclosedType(); 331*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSClassifierReference enclosedType; 332*af87fb4bSXin Li } 333*af87fb4bSXin Li 334*af87fb4bSXin Li public interface KSDynamicReference extends com.google.devtools.ksp.symbol.KSReferenceElement { 335*af87fb4bSXin Li } 336*af87fb4bSXin Li 337*af87fb4bSXin Li public interface KSExpectActual { 338*af87fb4bSXin Li method @NonNull public kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSDeclaration> findActuals(); 339*af87fb4bSXin Li method @NonNull public kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSDeclaration> findExpects(); 340*af87fb4bSXin Li method public boolean isActual(); 341*af87fb4bSXin Li method public boolean isExpect(); 342*af87fb4bSXin Li property public abstract boolean isActual; 343*af87fb4bSXin Li property public abstract boolean isExpect; 344*af87fb4bSXin Li } 345*af87fb4bSXin Li 346*af87fb4bSXin Li public interface KSFile extends com.google.devtools.ksp.symbol.KSDeclarationContainer com.google.devtools.ksp.symbol.KSAnnotated { 347*af87fb4bSXin Li method @NonNull public String getFileName(); 348*af87fb4bSXin Li method @NonNull public String getFilePath(); 349*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSName getPackageName(); 350*af87fb4bSXin Li property @NonNull public abstract String fileName; 351*af87fb4bSXin Li property @NonNull public abstract String filePath; 352*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSName packageName; 353*af87fb4bSXin Li } 354*af87fb4bSXin Li 355*af87fb4bSXin Li public interface KSFunction { 356*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSType getExtensionReceiverType(); 357*af87fb4bSXin Li method @NonNull public java.util.List<com.google.devtools.ksp.symbol.KSType> getParameterTypes(); 358*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSType getReturnType(); 359*af87fb4bSXin Li method @NonNull public java.util.List<com.google.devtools.ksp.symbol.KSTypeParameter> getTypeParameters(); 360*af87fb4bSXin Li method public boolean isError(); 361*af87fb4bSXin Li property @Nullable public abstract com.google.devtools.ksp.symbol.KSType extensionReceiverType; 362*af87fb4bSXin Li property public abstract boolean isError; 363*af87fb4bSXin Li property @NonNull public abstract java.util.List<com.google.devtools.ksp.symbol.KSType> parameterTypes; 364*af87fb4bSXin Li property @Nullable public abstract com.google.devtools.ksp.symbol.KSType returnType; 365*af87fb4bSXin Li property @NonNull public abstract java.util.List<com.google.devtools.ksp.symbol.KSTypeParameter> typeParameters; 366*af87fb4bSXin Li } 367*af87fb4bSXin Li 368*af87fb4bSXin Li public interface KSFunctionDeclaration extends com.google.devtools.ksp.symbol.KSDeclaration com.google.devtools.ksp.symbol.KSDeclarationContainer { 369*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSFunction asMemberOf(@NonNull com.google.devtools.ksp.symbol.KSType containing); 370*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSDeclaration findOverridee(); 371*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSTypeReference getExtensionReceiver(); 372*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.FunctionKind getFunctionKind(); 373*af87fb4bSXin Li method @NonNull public java.util.List<com.google.devtools.ksp.symbol.KSValueParameter> getParameters(); 374*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSTypeReference getReturnType(); 375*af87fb4bSXin Li method public boolean isAbstract(); 376*af87fb4bSXin Li property @Nullable public abstract com.google.devtools.ksp.symbol.KSTypeReference extensionReceiver; 377*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.FunctionKind functionKind; 378*af87fb4bSXin Li property public abstract boolean isAbstract; 379*af87fb4bSXin Li property @NonNull public abstract java.util.List<com.google.devtools.ksp.symbol.KSValueParameter> parameters; 380*af87fb4bSXin Li property @Nullable public abstract com.google.devtools.ksp.symbol.KSTypeReference returnType; 381*af87fb4bSXin Li } 382*af87fb4bSXin Li 383*af87fb4bSXin Li public interface KSModifierListOwner extends com.google.devtools.ksp.symbol.KSNode { 384*af87fb4bSXin Li method @NonNull public java.util.Set<com.google.devtools.ksp.symbol.Modifier> getModifiers(); 385*af87fb4bSXin Li property @NonNull public abstract java.util.Set<com.google.devtools.ksp.symbol.Modifier> modifiers; 386*af87fb4bSXin Li } 387*af87fb4bSXin Li 388*af87fb4bSXin Li public interface KSName { 389*af87fb4bSXin Li method @NonNull public String asString(); 390*af87fb4bSXin Li method @NonNull public String getQualifier(); 391*af87fb4bSXin Li method @NonNull public String getShortName(); 392*af87fb4bSXin Li } 393*af87fb4bSXin Li 394*af87fb4bSXin Li public interface KSNode { 395*af87fb4bSXin Li method public <D, R> R accept(@NonNull com.google.devtools.ksp.symbol.KSVisitor<D,R> visitor, @Nullable D data); 396*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.Location getLocation(); 397*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.Origin getOrigin(); 398*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSNode getParent(); 399*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.Location location; 400*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.Origin origin; 401*af87fb4bSXin Li property @Nullable public abstract com.google.devtools.ksp.symbol.KSNode parent; 402*af87fb4bSXin Li } 403*af87fb4bSXin Li 404*af87fb4bSXin Li public interface KSParenthesizedReference extends com.google.devtools.ksp.symbol.KSReferenceElement { 405*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSReferenceElement getElement(); 406*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSReferenceElement element; 407*af87fb4bSXin Li } 408*af87fb4bSXin Li 409*af87fb4bSXin Li public interface KSPropertyAccessor extends com.google.devtools.ksp.symbol.KSAnnotated com.google.devtools.ksp.symbol.KSModifierListOwner { 410*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSPropertyDeclaration getReceiver(); 411*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSPropertyDeclaration receiver; 412*af87fb4bSXin Li } 413*af87fb4bSXin Li 414*af87fb4bSXin Li public interface KSPropertyDeclaration extends com.google.devtools.ksp.symbol.KSDeclaration { 415*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType asMemberOf(@NonNull com.google.devtools.ksp.symbol.KSType containing); 416*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSPropertyDeclaration findOverridee(); 417*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSTypeReference getExtensionReceiver(); 418*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSPropertyGetter getGetter(); 419*af87fb4bSXin Li method public boolean getHasBackingField(); 420*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSPropertySetter getSetter(); 421*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSTypeReference getType(); 422*af87fb4bSXin Li method public boolean isDelegated(); 423*af87fb4bSXin Li method public boolean isMutable(); 424*af87fb4bSXin Li property @Nullable public abstract com.google.devtools.ksp.symbol.KSTypeReference extensionReceiver; 425*af87fb4bSXin Li property @Nullable public abstract com.google.devtools.ksp.symbol.KSPropertyGetter getter; 426*af87fb4bSXin Li property public abstract boolean hasBackingField; 427*af87fb4bSXin Li property public abstract boolean isMutable; 428*af87fb4bSXin Li property @Nullable public abstract com.google.devtools.ksp.symbol.KSPropertySetter setter; 429*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSTypeReference type; 430*af87fb4bSXin Li } 431*af87fb4bSXin Li 432*af87fb4bSXin Li public interface KSPropertyGetter extends com.google.devtools.ksp.symbol.KSPropertyAccessor { 433*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSTypeReference getReturnType(); 434*af87fb4bSXin Li property @Nullable public abstract com.google.devtools.ksp.symbol.KSTypeReference returnType; 435*af87fb4bSXin Li } 436*af87fb4bSXin Li 437*af87fb4bSXin Li public interface KSPropertySetter extends com.google.devtools.ksp.symbol.KSPropertyAccessor { 438*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSValueParameter getParameter(); 439*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSValueParameter parameter; 440*af87fb4bSXin Li } 441*af87fb4bSXin Li 442*af87fb4bSXin Li public interface KSReferenceElement extends com.google.devtools.ksp.symbol.KSNode { 443*af87fb4bSXin Li method @NonNull public java.util.List<com.google.devtools.ksp.symbol.KSTypeArgument> getTypeArguments(); 444*af87fb4bSXin Li property @NonNull public abstract java.util.List<com.google.devtools.ksp.symbol.KSTypeArgument> typeArguments; 445*af87fb4bSXin Li } 446*af87fb4bSXin Li 447*af87fb4bSXin Li public interface KSType { 448*af87fb4bSXin Li method @NonNull public kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSAnnotation> getAnnotations(); 449*af87fb4bSXin Li method @NonNull public java.util.List<com.google.devtools.ksp.symbol.KSTypeArgument> getArguments(); 450*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSDeclaration getDeclaration(); 451*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.Nullability getNullability(); 452*af87fb4bSXin Li method public boolean isAssignableFrom(@NonNull com.google.devtools.ksp.symbol.KSType that); 453*af87fb4bSXin Li method public boolean isCovarianceFlexible(); 454*af87fb4bSXin Li method public boolean isError(); 455*af87fb4bSXin Li method public boolean isFunctionType(); 456*af87fb4bSXin Li method public boolean isMarkedNullable(); 457*af87fb4bSXin Li method public boolean isMutabilityFlexible(); 458*af87fb4bSXin Li method public boolean isSuspendFunctionType(); 459*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType makeNotNullable(); 460*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType makeNullable(); 461*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType replace(@NonNull java.util.List<? extends com.google.devtools.ksp.symbol.KSTypeArgument> arguments); 462*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType starProjection(); 463*af87fb4bSXin Li property @NonNull public abstract kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSAnnotation> annotations; 464*af87fb4bSXin Li property @NonNull public abstract java.util.List<com.google.devtools.ksp.symbol.KSTypeArgument> arguments; 465*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSDeclaration declaration; 466*af87fb4bSXin Li property public abstract boolean isError; 467*af87fb4bSXin Li property public abstract boolean isFunctionType; 468*af87fb4bSXin Li property public abstract boolean isMarkedNullable; 469*af87fb4bSXin Li property public abstract boolean isSuspendFunctionType; 470*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.Nullability nullability; 471*af87fb4bSXin Li } 472*af87fb4bSXin Li 473*af87fb4bSXin Li public interface KSTypeAlias extends com.google.devtools.ksp.symbol.KSDeclaration { 474*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSName getName(); 475*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSTypeReference getType(); 476*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSName name; 477*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSTypeReference type; 478*af87fb4bSXin Li } 479*af87fb4bSXin Li 480*af87fb4bSXin Li public interface KSTypeArgument extends com.google.devtools.ksp.symbol.KSAnnotated { 481*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSTypeReference getType(); 482*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.Variance getVariance(); 483*af87fb4bSXin Li property @Nullable public abstract com.google.devtools.ksp.symbol.KSTypeReference type; 484*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.Variance variance; 485*af87fb4bSXin Li } 486*af87fb4bSXin Li 487*af87fb4bSXin Li public interface KSTypeParameter extends com.google.devtools.ksp.symbol.KSDeclaration { 488*af87fb4bSXin Li method @NonNull public kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSTypeReference> getBounds(); 489*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSName getName(); 490*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.Variance getVariance(); 491*af87fb4bSXin Li method public boolean isReified(); 492*af87fb4bSXin Li property @NonNull public abstract kotlin.sequences.Sequence<com.google.devtools.ksp.symbol.KSTypeReference> bounds; 493*af87fb4bSXin Li property public abstract boolean isReified; 494*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSName name; 495*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.Variance variance; 496*af87fb4bSXin Li } 497*af87fb4bSXin Li 498*af87fb4bSXin Li public interface KSTypeReference extends com.google.devtools.ksp.symbol.KSAnnotated com.google.devtools.ksp.symbol.KSModifierListOwner { 499*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSReferenceElement getElement(); 500*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSType resolve(); 501*af87fb4bSXin Li property @Nullable public abstract com.google.devtools.ksp.symbol.KSReferenceElement element; 502*af87fb4bSXin Li } 503*af87fb4bSXin Li 504*af87fb4bSXin Li public interface KSValueArgument extends com.google.devtools.ksp.symbol.KSAnnotated { 505*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSName getName(); 506*af87fb4bSXin Li method @Nullable public Object getValue(); 507*af87fb4bSXin Li method public boolean isSpread(); 508*af87fb4bSXin Li property public abstract boolean isSpread; 509*af87fb4bSXin Li property @Nullable public abstract com.google.devtools.ksp.symbol.KSName name; 510*af87fb4bSXin Li property @Nullable public abstract Object value; 511*af87fb4bSXin Li } 512*af87fb4bSXin Li 513*af87fb4bSXin Li public interface KSValueParameter extends com.google.devtools.ksp.symbol.KSAnnotated { 514*af87fb4bSXin Li method public boolean getHasDefault(); 515*af87fb4bSXin Li method @Nullable public com.google.devtools.ksp.symbol.KSName getName(); 516*af87fb4bSXin Li method @NonNull public com.google.devtools.ksp.symbol.KSTypeReference getType(); 517*af87fb4bSXin Li method public boolean isCrossInline(); 518*af87fb4bSXin Li method public boolean isNoInline(); 519*af87fb4bSXin Li method public boolean isVal(); 520*af87fb4bSXin Li method public boolean isVar(); 521*af87fb4bSXin Li method public boolean isVararg(); 522*af87fb4bSXin Li property public abstract boolean hasDefault; 523*af87fb4bSXin Li property public abstract boolean isCrossInline; 524*af87fb4bSXin Li property public abstract boolean isNoInline; 525*af87fb4bSXin Li property public abstract boolean isVal; 526*af87fb4bSXin Li property public abstract boolean isVar; 527*af87fb4bSXin Li property public abstract boolean isVararg; 528*af87fb4bSXin Li property @Nullable public abstract com.google.devtools.ksp.symbol.KSName name; 529*af87fb4bSXin Li property @NonNull public abstract com.google.devtools.ksp.symbol.KSTypeReference type; 530*af87fb4bSXin Li } 531*af87fb4bSXin Li 532*af87fb4bSXin Li public interface KSVisitor<D, R> { 533*af87fb4bSXin Li method public R visitAnnotated(@NonNull com.google.devtools.ksp.symbol.KSAnnotated annotated, @Nullable D data); 534*af87fb4bSXin Li method public R visitAnnotation(@NonNull com.google.devtools.ksp.symbol.KSAnnotation annotation, @Nullable D data); 535*af87fb4bSXin Li method public R visitCallableReference(@NonNull com.google.devtools.ksp.symbol.KSCallableReference reference, @Nullable D data); 536*af87fb4bSXin Li method public R visitClassDeclaration(@NonNull com.google.devtools.ksp.symbol.KSClassDeclaration classDeclaration, @Nullable D data); 537*af87fb4bSXin Li method public R visitClassifierReference(@NonNull com.google.devtools.ksp.symbol.KSClassifierReference reference, @Nullable D data); 538*af87fb4bSXin Li method public R visitDeclaration(@NonNull com.google.devtools.ksp.symbol.KSDeclaration declaration, @Nullable D data); 539*af87fb4bSXin Li method public R visitDeclarationContainer(@NonNull com.google.devtools.ksp.symbol.KSDeclarationContainer declarationContainer, @Nullable D data); 540*af87fb4bSXin Li method public R visitDefNonNullReference(@NonNull com.google.devtools.ksp.symbol.KSDefNonNullReference reference, @Nullable D data); 541*af87fb4bSXin Li method public R visitDynamicReference(@NonNull com.google.devtools.ksp.symbol.KSDynamicReference reference, @Nullable D data); 542*af87fb4bSXin Li method public R visitFile(@NonNull com.google.devtools.ksp.symbol.KSFile file, @Nullable D data); 543*af87fb4bSXin Li method public R visitFunctionDeclaration(@NonNull com.google.devtools.ksp.symbol.KSFunctionDeclaration function, @Nullable D data); 544*af87fb4bSXin Li method public R visitModifierListOwner(@NonNull com.google.devtools.ksp.symbol.KSModifierListOwner modifierListOwner, @Nullable D data); 545*af87fb4bSXin Li method public R visitNode(@NonNull com.google.devtools.ksp.symbol.KSNode node, @Nullable D data); 546*af87fb4bSXin Li method public R visitParenthesizedReference(@NonNull com.google.devtools.ksp.symbol.KSParenthesizedReference reference, @Nullable D data); 547*af87fb4bSXin Li method public R visitPropertyAccessor(@NonNull com.google.devtools.ksp.symbol.KSPropertyAccessor accessor, @Nullable D data); 548*af87fb4bSXin Li method public R visitPropertyDeclaration(@NonNull com.google.devtools.ksp.symbol.KSPropertyDeclaration property, @Nullable D data); 549*af87fb4bSXin Li method public R visitPropertyGetter(@NonNull com.google.devtools.ksp.symbol.KSPropertyGetter getter, @Nullable D data); 550*af87fb4bSXin Li method public R visitPropertySetter(@NonNull com.google.devtools.ksp.symbol.KSPropertySetter setter, @Nullable D data); 551*af87fb4bSXin Li method public R visitReferenceElement(@NonNull com.google.devtools.ksp.symbol.KSReferenceElement element, @Nullable D data); 552*af87fb4bSXin Li method public R visitTypeAlias(@NonNull com.google.devtools.ksp.symbol.KSTypeAlias typeAlias, @Nullable D data); 553*af87fb4bSXin Li method public R visitTypeArgument(@NonNull com.google.devtools.ksp.symbol.KSTypeArgument typeArgument, @Nullable D data); 554*af87fb4bSXin Li method public R visitTypeParameter(@NonNull com.google.devtools.ksp.symbol.KSTypeParameter typeParameter, @Nullable D data); 555*af87fb4bSXin Li method public R visitTypeReference(@NonNull com.google.devtools.ksp.symbol.KSTypeReference typeReference, @Nullable D data); 556*af87fb4bSXin Li method public R visitValueArgument(@NonNull com.google.devtools.ksp.symbol.KSValueArgument valueArgument, @Nullable D data); 557*af87fb4bSXin Li method public R visitValueParameter(@NonNull com.google.devtools.ksp.symbol.KSValueParameter valueParameter, @Nullable D data); 558*af87fb4bSXin Li } 559*af87fb4bSXin Li 560*af87fb4bSXin Li public class KSVisitorVoid implements com.google.devtools.ksp.symbol.KSVisitor<kotlin.Unit,kotlin.Unit> { 561*af87fb4bSXin Li ctor public KSVisitorVoid(); 562*af87fb4bSXin Li method public void visitAnnotated(@NonNull com.google.devtools.ksp.symbol.KSAnnotated annotated, @NonNull kotlin.Unit data); 563*af87fb4bSXin Li method public void visitAnnotation(@NonNull com.google.devtools.ksp.symbol.KSAnnotation annotation, @NonNull kotlin.Unit data); 564*af87fb4bSXin Li method public void visitCallableReference(@NonNull com.google.devtools.ksp.symbol.KSCallableReference reference, @NonNull kotlin.Unit data); 565*af87fb4bSXin Li method public void visitClassDeclaration(@NonNull com.google.devtools.ksp.symbol.KSClassDeclaration classDeclaration, @NonNull kotlin.Unit data); 566*af87fb4bSXin Li method public void visitClassifierReference(@NonNull com.google.devtools.ksp.symbol.KSClassifierReference reference, @NonNull kotlin.Unit data); 567*af87fb4bSXin Li method public void visitDeclaration(@NonNull com.google.devtools.ksp.symbol.KSDeclaration declaration, @NonNull kotlin.Unit data); 568*af87fb4bSXin Li method public void visitDeclarationContainer(@NonNull com.google.devtools.ksp.symbol.KSDeclarationContainer declarationContainer, @NonNull kotlin.Unit data); 569*af87fb4bSXin Li method public void visitDefNonNullReference(@NonNull com.google.devtools.ksp.symbol.KSDefNonNullReference reference, @NonNull kotlin.Unit data); 570*af87fb4bSXin Li method public void visitDynamicReference(@NonNull com.google.devtools.ksp.symbol.KSDynamicReference reference, @NonNull kotlin.Unit data); 571*af87fb4bSXin Li method public void visitFile(@NonNull com.google.devtools.ksp.symbol.KSFile file, @NonNull kotlin.Unit data); 572*af87fb4bSXin Li method public void visitFunctionDeclaration(@NonNull com.google.devtools.ksp.symbol.KSFunctionDeclaration function, @NonNull kotlin.Unit data); 573*af87fb4bSXin Li method public void visitModifierListOwner(@NonNull com.google.devtools.ksp.symbol.KSModifierListOwner modifierListOwner, @NonNull kotlin.Unit data); 574*af87fb4bSXin Li method public void visitNode(@NonNull com.google.devtools.ksp.symbol.KSNode node, @NonNull kotlin.Unit data); 575*af87fb4bSXin Li method public void visitParenthesizedReference(@NonNull com.google.devtools.ksp.symbol.KSParenthesizedReference reference, @NonNull kotlin.Unit data); 576*af87fb4bSXin Li method public void visitPropertyAccessor(@NonNull com.google.devtools.ksp.symbol.KSPropertyAccessor accessor, @NonNull kotlin.Unit data); 577*af87fb4bSXin Li method public void visitPropertyDeclaration(@NonNull com.google.devtools.ksp.symbol.KSPropertyDeclaration property, @NonNull kotlin.Unit data); 578*af87fb4bSXin Li method public void visitPropertyGetter(@NonNull com.google.devtools.ksp.symbol.KSPropertyGetter getter, @NonNull kotlin.Unit data); 579*af87fb4bSXin Li method public void visitPropertySetter(@NonNull com.google.devtools.ksp.symbol.KSPropertySetter setter, @NonNull kotlin.Unit data); 580*af87fb4bSXin Li method public void visitReferenceElement(@NonNull com.google.devtools.ksp.symbol.KSReferenceElement element, @NonNull kotlin.Unit data); 581*af87fb4bSXin Li method public void visitTypeAlias(@NonNull com.google.devtools.ksp.symbol.KSTypeAlias typeAlias, @NonNull kotlin.Unit data); 582*af87fb4bSXin Li method public void visitTypeArgument(@NonNull com.google.devtools.ksp.symbol.KSTypeArgument typeArgument, @NonNull kotlin.Unit data); 583*af87fb4bSXin Li method public void visitTypeParameter(@NonNull com.google.devtools.ksp.symbol.KSTypeParameter typeParameter, @NonNull kotlin.Unit data); 584*af87fb4bSXin Li method public void visitTypeReference(@NonNull com.google.devtools.ksp.symbol.KSTypeReference typeReference, @NonNull kotlin.Unit data); 585*af87fb4bSXin Li method public void visitValueArgument(@NonNull com.google.devtools.ksp.symbol.KSValueArgument valueArgument, @NonNull kotlin.Unit data); 586*af87fb4bSXin Li method public void visitValueParameter(@NonNull com.google.devtools.ksp.symbol.KSValueParameter valueParameter, @NonNull kotlin.Unit data); 587*af87fb4bSXin Li } 588*af87fb4bSXin Li 589*af87fb4bSXin Li public abstract sealed class Location { 590*af87fb4bSXin Li } 591*af87fb4bSXin Li 592*af87fb4bSXin Li public enum Modifier { 593*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier ABSTRACT; 594*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier ACTUAL; 595*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier ANNOTATION; 596*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier CONST; 597*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier CROSSINLINE; 598*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier DATA; 599*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier ENUM; 600*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier EXPECT; 601*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier EXTERNAL; 602*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier FINAL; 603*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier FUN; 604*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier IN; 605*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier INFIX; 606*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier INLINE; 607*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier INNER; 608*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier INTERNAL; 609*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier JAVA_DEFAULT; 610*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier JAVA_NATIVE; 611*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier JAVA_STATIC; 612*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier JAVA_STRICT; 613*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier JAVA_SYNCHRONIZED; 614*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier JAVA_TRANSIENT; 615*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier JAVA_VOLATILE; 616*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier LATEINIT; 617*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier NOINLINE; 618*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier OPEN; 619*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier OPERATOR; 620*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier OUT; 621*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier OVERRIDE; 622*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier PRIVATE; 623*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier PROTECTED; 624*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier PUBLIC; 625*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier REIFIED; 626*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier SEALED; 627*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier SUSPEND; 628*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier TAILREC; 629*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier VALUE; 630*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Modifier VARARG; 631*af87fb4bSXin Li } 632*af87fb4bSXin Li 633*af87fb4bSXin Li public final class NonExistLocation extends com.google.devtools.ksp.symbol.Location { 634*af87fb4bSXin Li field @NonNull public static final com.google.devtools.ksp.symbol.NonExistLocation INSTANCE; 635*af87fb4bSXin Li } 636*af87fb4bSXin Li 637*af87fb4bSXin Li public enum Nullability { 638*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Nullability NOT_NULL; 639*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Nullability NULLABLE; 640*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Nullability PLATFORM; 641*af87fb4bSXin Li } 642*af87fb4bSXin Li 643*af87fb4bSXin Li public enum Origin { 644*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Origin JAVA; 645*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Origin JAVA_LIB; 646*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Origin KOTLIN; 647*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Origin KOTLIN_LIB; 648*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Origin SYNTHETIC; 649*af87fb4bSXin Li } 650*af87fb4bSXin Li 651*af87fb4bSXin Li public enum Variance { 652*af87fb4bSXin Li method public final String getLabel(); 653*af87fb4bSXin Li property public final String label; 654*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Variance CONTRAVARIANT; 655*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Variance COVARIANT; 656*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Variance INVARIANT; 657*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Variance STAR; 658*af87fb4bSXin Li } 659*af87fb4bSXin Li 660*af87fb4bSXin Li public enum Visibility { 661*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Visibility INTERNAL; 662*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Visibility JAVA_PACKAGE; 663*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Visibility LOCAL; 664*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Visibility PRIVATE; 665*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Visibility PROTECTED; 666*af87fb4bSXin Li enum_constant public static final com.google.devtools.ksp.symbol.Visibility PUBLIC; 667*af87fb4bSXin Li } 668*af87fb4bSXin Li 669*af87fb4bSXin Li} 670*af87fb4bSXin Li 671*af87fb4bSXin Lipackage com.google.devtools.ksp.visitor { 672*af87fb4bSXin Li 673*af87fb4bSXin Li public abstract class KSDefaultVisitor<D, R> extends com.google.devtools.ksp.visitor.KSEmptyVisitor<D,R> { 674*af87fb4bSXin Li ctor public KSDefaultVisitor(); 675*af87fb4bSXin Li } 676*af87fb4bSXin Li 677*af87fb4bSXin Li public abstract class KSEmptyVisitor<D, R> implements com.google.devtools.ksp.symbol.KSVisitor<D,R> { 678*af87fb4bSXin Li ctor public KSEmptyVisitor(); 679*af87fb4bSXin Li method public abstract R defaultHandler(@NonNull com.google.devtools.ksp.symbol.KSNode node, @Nullable D data); 680*af87fb4bSXin Li method public R visitAnnotated(@NonNull com.google.devtools.ksp.symbol.KSAnnotated annotated, @Nullable D data); 681*af87fb4bSXin Li method public R visitAnnotation(@NonNull com.google.devtools.ksp.symbol.KSAnnotation annotation, @Nullable D data); 682*af87fb4bSXin Li method public R visitCallableReference(@NonNull com.google.devtools.ksp.symbol.KSCallableReference reference, @Nullable D data); 683*af87fb4bSXin Li method public R visitClassDeclaration(@NonNull com.google.devtools.ksp.symbol.KSClassDeclaration classDeclaration, @Nullable D data); 684*af87fb4bSXin Li method public R visitClassifierReference(@NonNull com.google.devtools.ksp.symbol.KSClassifierReference reference, @Nullable D data); 685*af87fb4bSXin Li method public R visitDeclaration(@NonNull com.google.devtools.ksp.symbol.KSDeclaration declaration, @Nullable D data); 686*af87fb4bSXin Li method public R visitDeclarationContainer(@NonNull com.google.devtools.ksp.symbol.KSDeclarationContainer declarationContainer, @Nullable D data); 687*af87fb4bSXin Li method public R visitDefNonNullReference(@NonNull com.google.devtools.ksp.symbol.KSDefNonNullReference reference, @Nullable D data); 688*af87fb4bSXin Li method public R visitDynamicReference(@NonNull com.google.devtools.ksp.symbol.KSDynamicReference reference, @Nullable D data); 689*af87fb4bSXin Li method public R visitFile(@NonNull com.google.devtools.ksp.symbol.KSFile file, @Nullable D data); 690*af87fb4bSXin Li method public R visitFunctionDeclaration(@NonNull com.google.devtools.ksp.symbol.KSFunctionDeclaration function, @Nullable D data); 691*af87fb4bSXin Li method public R visitModifierListOwner(@NonNull com.google.devtools.ksp.symbol.KSModifierListOwner modifierListOwner, @Nullable D data); 692*af87fb4bSXin Li method public R visitNode(@NonNull com.google.devtools.ksp.symbol.KSNode node, @Nullable D data); 693*af87fb4bSXin Li method public R visitParenthesizedReference(@NonNull com.google.devtools.ksp.symbol.KSParenthesizedReference reference, @Nullable D data); 694*af87fb4bSXin Li method public R visitPropertyAccessor(@NonNull com.google.devtools.ksp.symbol.KSPropertyAccessor accessor, @Nullable D data); 695*af87fb4bSXin Li method public R visitPropertyDeclaration(@NonNull com.google.devtools.ksp.symbol.KSPropertyDeclaration property, @Nullable D data); 696*af87fb4bSXin Li method public R visitPropertyGetter(@NonNull com.google.devtools.ksp.symbol.KSPropertyGetter getter, @Nullable D data); 697*af87fb4bSXin Li method public R visitPropertySetter(@NonNull com.google.devtools.ksp.symbol.KSPropertySetter setter, @Nullable D data); 698*af87fb4bSXin Li method public R visitReferenceElement(@NonNull com.google.devtools.ksp.symbol.KSReferenceElement element, @Nullable D data); 699*af87fb4bSXin Li method public R visitTypeAlias(@NonNull com.google.devtools.ksp.symbol.KSTypeAlias typeAlias, @Nullable D data); 700*af87fb4bSXin Li method public R visitTypeArgument(@NonNull com.google.devtools.ksp.symbol.KSTypeArgument typeArgument, @Nullable D data); 701*af87fb4bSXin Li method public R visitTypeParameter(@NonNull com.google.devtools.ksp.symbol.KSTypeParameter typeParameter, @Nullable D data); 702*af87fb4bSXin Li method public R visitTypeReference(@NonNull com.google.devtools.ksp.symbol.KSTypeReference typeReference, @Nullable D data); 703*af87fb4bSXin Li method public R visitValueArgument(@NonNull com.google.devtools.ksp.symbol.KSValueArgument valueArgument, @Nullable D data); 704*af87fb4bSXin Li method public R visitValueParameter(@NonNull com.google.devtools.ksp.symbol.KSValueParameter valueParameter, @Nullable D data); 705*af87fb4bSXin Li } 706*af87fb4bSXin Li 707*af87fb4bSXin Li public abstract class KSTopDownVisitor<D, R> extends com.google.devtools.ksp.visitor.KSDefaultVisitor<D,R> { 708*af87fb4bSXin Li ctor public KSTopDownVisitor(); 709*af87fb4bSXin Li } 710*af87fb4bSXin Li 711*af87fb4bSXin Li public class KSValidateVisitor extends com.google.devtools.ksp.visitor.KSDefaultVisitor<com.google.devtools.ksp.symbol.KSNode,java.lang.Boolean> { 712*af87fb4bSXin Li ctor public KSValidateVisitor(@NonNull kotlin.jvm.functions.Function2<? super com.google.devtools.ksp.symbol.KSNode,? super com.google.devtools.ksp.symbol.KSNode,java.lang.Boolean> predicate); 713*af87fb4bSXin Li method @NonNull public Boolean defaultHandler(@NonNull com.google.devtools.ksp.symbol.KSNode node, @Nullable com.google.devtools.ksp.symbol.KSNode data); 714*af87fb4bSXin Li method @NonNull public Boolean visitAnnotated(@NonNull com.google.devtools.ksp.symbol.KSAnnotated annotated, @Nullable com.google.devtools.ksp.symbol.KSNode data); 715*af87fb4bSXin Li method @NonNull public Boolean visitAnnotation(@NonNull com.google.devtools.ksp.symbol.KSAnnotation annotation, @Nullable com.google.devtools.ksp.symbol.KSNode data); 716*af87fb4bSXin Li method @NonNull public Boolean visitClassDeclaration(@NonNull com.google.devtools.ksp.symbol.KSClassDeclaration classDeclaration, @Nullable com.google.devtools.ksp.symbol.KSNode data); 717*af87fb4bSXin Li method @NonNull public Boolean visitDeclaration(@NonNull com.google.devtools.ksp.symbol.KSDeclaration declaration, @Nullable com.google.devtools.ksp.symbol.KSNode data); 718*af87fb4bSXin Li method @NonNull public Boolean visitDeclarationContainer(@NonNull com.google.devtools.ksp.symbol.KSDeclarationContainer declarationContainer, @Nullable com.google.devtools.ksp.symbol.KSNode data); 719*af87fb4bSXin Li method @NonNull public Boolean visitFunctionDeclaration(@NonNull com.google.devtools.ksp.symbol.KSFunctionDeclaration function, @Nullable com.google.devtools.ksp.symbol.KSNode data); 720*af87fb4bSXin Li method @NonNull public Boolean visitPropertyDeclaration(@NonNull com.google.devtools.ksp.symbol.KSPropertyDeclaration property, @Nullable com.google.devtools.ksp.symbol.KSNode data); 721*af87fb4bSXin Li method @NonNull public Boolean visitTypeParameter(@NonNull com.google.devtools.ksp.symbol.KSTypeParameter typeParameter, @Nullable com.google.devtools.ksp.symbol.KSNode data); 722*af87fb4bSXin Li method @NonNull public Boolean visitTypeReference(@NonNull com.google.devtools.ksp.symbol.KSTypeReference typeReference, @Nullable com.google.devtools.ksp.symbol.KSNode data); 723*af87fb4bSXin Li method @NonNull public Boolean visitValueArgument(@NonNull com.google.devtools.ksp.symbol.KSValueArgument valueArgument, @Nullable com.google.devtools.ksp.symbol.KSNode data); 724*af87fb4bSXin Li method @NonNull public Boolean visitValueParameter(@NonNull com.google.devtools.ksp.symbol.KSValueParameter valueParameter, @Nullable com.google.devtools.ksp.symbol.KSNode data); 725*af87fb4bSXin Li } 726*af87fb4bSXin Li 727*af87fb4bSXin Li} 728*af87fb4bSXin Li 729