io.appmetrica.gradle.aarcheck.api.Models.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of aar-check Show documentation
Show all versions of aar-check Show documentation
Provides plugin for check aar
The newest version!
package io.appmetrica.gradle.aarcheck.api
enum class AccessModifier {
PUBLIC, PROTECTED, PRIVATE, PACKAGE;
override fun toString() = name.toLowerCase()
}
enum class ClassType(private val value: String) {
CLASS("class"),
ENUM("enum"),
INTERFACE("interface"),
ANNOTATION("@interface");
override fun toString() = value
}
data class TypeParameter(
val name: String,
val extend: Type,
val interfaces: List
)
data class TypeArgument(
val wildcard: Char,
val type: Type?
)
data class Type(
val packageName: String?,
val name: String,
val arguments: List,
val arrayDim: Int
) {
val fullName = "${packageName?.let { "$it." } ?: ""}$name"
}
data class Annotation(
val type: Type
)
data class Class(
val modifier: AccessModifier,
val type: ClassType,
val packageName: String?,
val name: String,
val genericParameters: List,
val superClass: Type?,
val interfaces: List,
val isSynthetic: Boolean,
val isAbstract: Boolean,
val isStatic: Boolean,
val isFinal: Boolean,
val fields: List,
val methods: List
) {
val fullName = "${packageName?.let { "$it." } ?: ""}$name"
val isAnonim = name.substringAfterLast("$").toIntOrNull() != null
}
data class Field(
val declaringClass: Class,
val modifier: AccessModifier,
val type: Type,
val name: String,
val annotations: List,
val isSynthetic: Boolean,
val isStatic: Boolean,
val isFinal: Boolean
)
data class MethodParam(
val type: Type,
val annotations: List,
val isVarArgs: Boolean
)
data class Method(
val declaringClass: Class,
val modifier: AccessModifier,
val genericParameters: List,
val returnType: Type,
val name: String,
val params: List,
val annotations: List,
val isConstructor: Boolean,
val isSynthetic: Boolean,
val isAbstract: Boolean,
val isStatic: Boolean,
val isFinal: Boolean,
val nativeSignature: String
) {
val paramString = params.joinToString(", ") { it.type.fullName }
val fullName = "$name($paramString)"
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy