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