MethodQuery

方法查询条件。

用在 findMethodfindMethodOrNullfindAllMethods 的查询块里。 多个条件会同时生效,全部满足才算匹配。

val method = clazz.findMethod {
name("foo")
paramCount(2)
returnType(String::class.java)
}

Functions

Link copied to clipboard

只在当前类中查找。

Link copied to clipboard
fun exceptionTypes(vararg types: Class<*>)

限定声明的异常类型。

Link copied to clipboard
fun filter(predicate: Predicate<Method>)

添加 Java Predicate 条件。

fun filter(condition: MethodCondition)

添加自定义 Kotlin 条件。

Link copied to clipboard
fun hasParams()

限定为有参数方法。

Link copied to clipboard

查找当前类和全部父类。

Link copied to clipboard

限定为 abstract 方法。

Link copied to clipboard
fun isBridge()

限定为 bridge 方法。

Link copied to clipboard
fun isDefault()

限定为 interface default 方法。

Link copied to clipboard
fun isFinal()

限定为 final 方法。

Link copied to clipboard
fun isNative()

限定为 native 方法。

Link copied to clipboard
fun isPrivate()

限定为 private 方法。

Link copied to clipboard

限定为 protected 方法。

Link copied to clipboard
fun isPublic()

限定为 public 方法。

Link copied to clipboard
fun isStatic()

限定为 static 方法。

fun isStatic(value: Boolean)

限定是否为 static 方法。

Link copied to clipboard

限定为 synchronized 方法。

Link copied to clipboard

限定为 synthetic 方法。

Link copied to clipboard
fun isVarArgs()

限定为可变参数方法。

Link copied to clipboard
fun name(value: String)

限定方法名。

Link copied to clipboard
fun nameContains(value: String, ignoreCase: Boolean = false)

限定方法名包含指定文本。

Link copied to clipboard
fun nameEndsWith(value: String, ignoreCase: Boolean = false)

限定方法名以指定文本结尾。

Link copied to clipboard
fun nameStartsWith(value: String, ignoreCase: Boolean = false)

限定方法名以指定文本开头。

Link copied to clipboard
fun noParams()

限定为无参数方法。

Link copied to clipboard

限定为非 abstract 方法。

Link copied to clipboard
fun notBridge()

限定为非 bridge 方法。

Link copied to clipboard

限定为非 interface default 方法。

Link copied to clipboard
fun notFinal()

限定为非 final 方法。

Link copied to clipboard
fun notNative()

限定为非 native 方法。

Link copied to clipboard

限定为非 private 方法。

Link copied to clipboard

限定为非 protected 方法。

Link copied to clipboard
fun notPublic()

限定为非 public 方法。

Link copied to clipboard
fun notStatic()

限定为非 static 方法。

Link copied to clipboard

限定为非 synchronized 方法。

Link copied to clipboard

限定为非 synthetic 方法。

Link copied to clipboard

限定为非可变参数方法。

Link copied to clipboard
fun paramCount(value: Int)

限定参数数量。

Link copied to clipboard

限定参数数量范围。

Link copied to clipboard
fun parameterTypes(vararg types: Class<*>)

限定完整参数类型。

Link copied to clipboard
fun parameterTypesAssignableFrom(vararg types: Class<*>)

限定方法参数能接收指定类型。

Link copied to clipboard
fun params(vararg types: Class<*>)

parameterTypes 的短名称。

Link copied to clipboard
fun paramsAssignableFrom(vararg types: Class<*>)
Link copied to clipboard
fun returnType(value: Class<*>)

限定返回值类型。

Link copied to clipboard

限定返回值类型是 value 本身或子类。

Link copied to clipboard

限定返回值为 void。