import{_ as s,o,c as a,a as e}from"./app.fb8271cf.js";const n={},l=e(`
class HookParam internal constructor(private val creatorInstance: YukiMemberHookCreator, private var param: YukiHookCallback.Param?)
\u53D8\u66F4\u8BB0\u5F55
v1.0
\u6DFB\u52A0
v1.1.0
\u4FEE\u6539
\u79FB\u52A8 HookParamWrapper
\u5230 YukiHookCallback.Param
\u4FEE\u6B63\u62FC\u5199\u9519\u8BEF\u7684 creater \u547D\u540D\u5230 creator
\u529F\u80FD\u63CF\u8FF0
Hook \u65B9\u6CD5\u3001\u6784\u9020\u65B9\u6CD5\u7684\u76EE\u6807\u5BF9\u8C61\u5B9E\u73B0\u7C7B\u3002
val args: Array<Any?>
\u53D8\u66F4\u8BB0\u5F55
\u5728 v1.0
\u6DFB\u52A0
\u529F\u80FD\u63CF\u8FF0
\u83B7\u53D6\u5F53\u524D Hook \u5BF9\u8C61
member
\u6216constructor
\u7684\u53C2\u6570\u5BF9\u8C61\u6570\u7EC4\u3002
\u8FD9\u91CC\u7684\u6570\u7EC4\u6BCF\u9879\u7C7B\u578B\u9ED8\u8BA4\u4E3A Any
\uFF0C\u4F60\u53EF\u4EE5\u4F7F\u7528 args
\u65B9\u6CD5\u6765\u5B9E\u73B0 ArgsModifyer.cast
\u529F\u80FD\u3002
\u53D8\u66F4\u8BB0\u5F55
v1.0
\u6DFB\u52A0
v1.0.75
\u79FB\u9664
\u8BF7\u4F7F\u7528 args(index = 0)
\u6216 args().first()
\u53D8\u66F4\u8BB0\u5F55
v1.0
\u6DFB\u52A0
v1.0.75
\u79FB\u9664
\u8BF7\u4F7F\u7528 args().last()
val instance: Any
\u53D8\u66F4\u8BB0\u5F55
v1.0
\u6DFB\u52A0
\u529F\u80FD\u63CF\u8FF0
\u83B7\u53D6\u5F53\u524D Hook \u5B9E\u4F8B\u7684\u5BF9\u8C61\u3002
\u7279\u522B\u6CE8\u610F
\u5982\u679C\u4F60\u5F53\u524D Hook \u7684\u5BF9\u8C61\u662F\u4E00\u4E2A\u9759\u6001\uFF0C\u90A3\u4E48\u5B83\u5C06\u4E0D\u5B58\u5728\u5B9E\u4F8B\u7684\u5BF9\u8C61\u3002
val instanceClass: Class<*>
\u53D8\u66F4\u8BB0\u5F55
v1.0
\u6DFB\u52A0
\u529F\u80FD\u63CF\u8FF0
\u83B7\u53D6\u5F53\u524D Hook \u5B9E\u4F8B\u7684\u7C7B\u5BF9\u8C61\u3002
val member: Member
\u53D8\u66F4\u8BB0\u5F55
v1.1.0
\u65B0\u589E
\u529F\u80FD\u63CF\u8FF0
\u83B7\u53D6\u5F53\u524D Hook \u5BF9\u8C61\u7684
Member
\u3002
\u5728\u4E0D\u786E\u5B9A Member
\u7C7B\u578B\u4E3A Method
\u6216 Constructor
\u65F6\u53EF\u4EE5\u4F7F\u7528\u6B64\u65B9\u6CD5\u3002
val method: Method
\u53D8\u66F4\u8BB0\u5F55
v1.0
\u6DFB\u52A0
\u529F\u80FD\u63CF\u8FF0
\u83B7\u53D6\u5F53\u524D Hook \u5BF9\u8C61\u7684\u65B9\u6CD5\u3002
val constructor: Constructor
\u53D8\u66F4\u8BB0\u5F55
v1.0
\u6DFB\u52A0
\u529F\u80FD\u63CF\u8FF0
\u83B7\u53D6\u5F53\u524D Hook \u5BF9\u8C61\u7684\u6784\u9020\u65B9\u6CD5\u3002
var result: Any?
\u53D8\u66F4\u8BB0\u5F55
v1.0
\u6DFB\u52A0
\u529F\u80FD\u63CF\u8FF0
\u83B7\u53D6\u3001\u8BBE\u7F6E\u5F53\u524D Hook \u5BF9\u8C61\u7684
method
\u6216constructor
\u7684\u8FD4\u56DE\u503C\u3002
val hasThrowable: Boolean
\u53D8\u66F4\u8BB0\u5F55
v1.1.0
\u65B0\u589E
\u529F\u80FD\u63CF\u8FF0
\u5224\u65AD\u662F\u5426\u5B58\u5728\u8BBE\u7F6E\u8FC7\u7684\u65B9\u6CD5\u8C03\u7528\u629B\u51FA\u5F02\u5E38\u3002
val throwable: Throwable?
\u53D8\u66F4\u8BB0\u5F55
v1.1.0
\u65B0\u589E
\u529F\u80FD\u63CF\u8FF0
\u83B7\u53D6\u8BBE\u7F6E\u7684\u65B9\u6CD5\u8C03\u7528\u629B\u51FA\u5F02\u5E38\u3002
fun Throwable.throwToApp()
\u53D8\u66F4\u8BB0\u5F55
v1.1.0
\u65B0\u589E
\u529F\u80FD\u63CF\u8FF0
\u5411 Hook APP \u629B\u51FA\u5F02\u5E38\u3002
\u4F7F\u7528 hasThrowable
\u5224\u65AD\u5F53\u524D\u662F\u5426\u5B58\u5728\u88AB\u629B\u51FA\u7684\u5F02\u5E38\u3002
\u4F7F\u7528 throwable
\u83B7\u53D6\u5F53\u524D\u8BBE\u7F6E\u7684\u65B9\u6CD5\u8C03\u7528\u629B\u51FA\u5F02\u5E38\u3002
\u4EC5\u4F1A\u5728\u56DE\u8C03\u65B9\u6CD5\u7684 MemberHookCreator.beforeHook
\u6216 MemberHookCreator.afterHook
\u4E2D\u751F\u6548\u3002
\u7279\u522B\u6CE8\u610F
\u8BBE\u7F6E\u540E\u4F1A\u540C\u65F6\u6267\u884C resultNull \u65B9\u6CD5\u5E76\u5C06\u5F02\u5E38\u629B\u51FA\u7ED9\u5F53\u524D Hook APP\u3002
\u529F\u80FD\u793A\u4F8B
Hook \u8FC7\u7A0B\u4E2D\u7684\u5F02\u5E38\u4EC5\u4F1A\u4F5C\u7528\u4E8E (Xposed) \u5BBF\u4E3B\u73AF\u5883\uFF0C\u76EE\u6807 Hook APP \u4E0D\u4F1A\u53D7\u5230\u5F71\u54CD\u3002
\u82E5\u60F3\u5C06\u5F02\u5E38\u629B\u7ED9 Hook APP\uFF0C\u53EF\u4EE5\u76F4\u63A5\u4F7F\u7528\u5982\u4E0B\u65B9\u6CD5\u3002
\u793A\u4F8B\u5982\u4E0B
injectMember {
method {
// ...
}
beforeHook {
RuntimeException("Test Exception").throwToApp()
}
}
\u7279\u522B\u6CE8\u610F
\u5411 Hook APP \u629B\u51FA\u5F02\u5E38\u4F1A\u5BF9\u5176\u66B4\u9732\u88AB Hook \u7684\u4E8B\u5B9E\uFF0C\u662F\u4E0D\u5B89\u5168\u7684\uFF0C\u5BB9\u6613\u88AB\u68C0\u6D4B\uFF0C\u8BF7\u6309\u5B9E\u9645\u573A\u666F\u5408\u7406\u4F7F\u7528\u3002
inline fun <reified T> result(): T?
\u53D8\u66F4\u8BB0\u5F55
v1.0.75
\u65B0\u589E
\u529F\u80FD\u63CF\u8FF0
\u83B7\u53D6\u5F53\u524D Hook \u5BF9\u8C61\u7684
method
\u6216constructor
\u7684\u8FD4\u56DE\u503CT
\u3002
\u53D8\u66F4\u8BB0\u5F55
v1.0.66
\u65B0\u589E
v1.0.75
\u79FB\u9664
\u53D8\u66F4\u8BB0\u5F55
v1.0.66
\u65B0\u589E
v1.0.75
\u79FB\u9664
inline fun <reified T> instance(): T
\u53D8\u66F4\u8BB0\u5F55
v1.0
\u6DFB\u52A0
\u529F\u80FD\u63CF\u8FF0
\u83B7\u53D6\u5F53\u524D Hook \u5B9E\u4F8B\u7684\u5BF9\u8C61
T
\u3002
\u529F\u80FD\u793A\u4F8B
\u4F60\u53EF\u4EE5\u901A\u8FC7 instance
\u65B9\u6CD5\u8F7B\u677E\u4F7F\u7528\u6CDB\u578B cast
\u4E3A\u76EE\u6807\u5BF9\u8C61\u7684\u7C7B\u578B\u3002
\u793A\u4F8B\u5982\u4E0B
instance<Activity>().finish()
fun args(): ArgsIndexCondition
\u53D8\u66F4\u8BB0\u5F55
v1.0.75
\u65B0\u589E
\u529F\u80FD\u63CF\u8FF0
\u83B7\u53D6\u5F53\u524D Hook \u5BF9\u8C61\u7684
method
\u6216constructor
\u7684\u53C2\u6570\u6570\u7EC4\u4E0B\u6807\u5B9E\u4F8B\u5316\u7C7B\u3002
fun args(index: Int): ArgsModifyer
\u53D8\u66F4\u8BB0\u5F55
v1.0
\u6DFB\u52A0
v1.0.75
\u4FEE\u6539
\u9ED8\u8BA4\u503C index = 0
\u79FB\u52A8\u5230\u65B0\u7684\u4F7F\u7528\u65B9\u6CD5 args().first()
\u529F\u80FD\u63CF\u8FF0
\u83B7\u53D6\u5F53\u524D Hook \u5BF9\u8C61\u7684
method
\u6216constructor
\u7684\u53C2\u6570\u5B9E\u4F8B\u5316\u5BF9\u8C61\u7C7B\u3002
\u529F\u80FD\u793A\u4F8B
\u4F60\u53EF\u4EE5\u901A\u8FC7 args
\u65B9\u6CD5\u4FEE\u6539\u5F53\u524D Hook \u5B9E\u4F8B\u7684\u65B9\u6CD5\u3001\u6784\u9020\u65B9\u6CD5\u7684\u53C2\u6570\u5185\u5BB9\u3002
\u4F60\u53EF\u4EE5\u76F4\u63A5\u4F7F\u7528 set
\u65B9\u6CD5\u8BBE\u7F6E param
\u4E3A\u4F60\u7684\u76EE\u6807\u5B9E\u4F8B\uFF0C\u63A5\u53D7 Any
\u7C7B\u578B\u3002
\u7279\u522B\u6CE8\u610F
\u8BF7\u786E\u4FDD param \u7C7B\u578B\u4E3A\u4F60\u7684\u76EE\u6807\u5B9E\u4F8B\u7C7B\u578B\u3002
\u793A\u4F8B\u5982\u4E0B
args(index = 0).set("modify the value")
\u4F60\u53EF\u4EE5\u8FD9\u6837\u76F4\u63A5\u8BBE\u7F6E\u7B2C\u4E00\u4F4D param
\u7684\u503C\u3002
\u793A\u4F8B\u5982\u4E0B
args().first().set("modify the value")
\u4F60\u8FD8\u53EF\u4EE5\u76F4\u63A5\u8BBE\u7F6E\u6700\u540E\u4E00\u4F4D param
\u7684\u503C\u3002
\u793A\u4F8B\u5982\u4E0B
args().last().set("modify the value")
\u4F60\u8FD8\u53EF\u4EE5\u4F7F\u7528 setNull
\u65B9\u6CD5\u8BBE\u7F6E param
\u4E3A\u7A7A\u3002
\u793A\u4F8B\u5982\u4E0B
args(index = 1).setNull()
\u4F60\u8FD8\u53EF\u4EE5\u4F7F\u7528 setTrue
\u65B9\u6CD5\u8BBE\u7F6E param
\u4E3A true
\u3002
\u7279\u522B\u6CE8\u610F
\u8BF7\u786E\u4FDD param \u7C7B\u578B\u4E3A Boolean\u3002
\u793A\u4F8B\u5982\u4E0B
args(index = 1).setTrue()
\u4F60\u8FD8\u53EF\u4EE5\u4F7F\u7528 setFalse
\u65B9\u6CD5\u8BBE\u7F6E param
\u4E3A false
\u3002
\u7279\u522B\u6CE8\u610F
\u8BF7\u786E\u4FDD param \u7C7B\u578B\u4E3A Boolean\u3002
\u793A\u4F8B\u5982\u4E0B
args(index = 1).setFalse()
fun callOriginal(): Any?
fun <T> callOriginal(): T?
\u53D8\u66F4\u8BB0\u5F55
v1.1.0
\u65B0\u589E
\u529F\u80FD\u63CF\u8FF0
\u6267\u884C\u539F\u59CB
Member
\u3002
\u8C03\u7528\u81EA\u8EAB\u672A\u8FDB\u884C Hook \u7684\u539F\u59CB Member
\u5E76\u8C03\u7528\u539F\u59CB\u53C2\u6570\u6267\u884C\u3002
\u529F\u80FD\u5B9E\u4F8B
\u6B64\u65B9\u6CD5\u53EF\u4EE5 invoke
\u539F\u59CB\u672A\u7ECF Hook \u7684 Member
\u5BF9\u8C61\uFF0C\u53D6\u51B3\u4E8E\u539F\u59CB Member
\u7684\u53C2\u6570\u3002
\u8C03\u7528\u81EA\u8EAB\u539F\u59CB\u7684\u65B9\u6CD5\u4E0D\u4F1A\u518D\u7ECF\u8FC7\u5F53\u524D beforeHook
\u3001afterHook
\u4EE5\u53CA replaceUnit
\u3001replaceAny
\u3002
\u6BD4\u5982\u6211\u4EEC Hook \u7684\u8FD9\u4E2A\u65B9\u6CD5\u88AB\u8FD9\u6837\u8C03\u7528 test("test value")
\uFF0C\u4F7F\u7528\u6B64\u65B9\u6CD5\u4F1A\u8C03\u7528\u5176\u4E2D\u7684 "test value"
\u4F5C\u4E3A\u53C2\u6570\u3002
\u793A\u4F8B\u5982\u4E0B
injectMember {
method {
name = "test"
param(StringType)
returnType = StringType
}
afterHook {
// <\u65B9\u68481> \u4E0D\u4F7F\u7528\u6CDB\u578B\uFF0C\u4E0D\u83B7\u53D6\u65B9\u6CD5\u6267\u884C\u7ED3\u679C\uFF0C\u8C03\u7528\u5C06\u4F7F\u7528\u539F\u65B9\u6CD5\u4F20\u5165\u7684 args \u81EA\u52A8\u4F20\u53C2
callOriginal()
// <\u65B9\u68482> \u4F7F\u7528\u6CDB\u578B\uFF0C\u5DF2\u77E5\u65B9\u6CD5\u6267\u884C\u7ED3\u679C\u53C2\u6570\u7C7B\u578B\u8FDB\u884C cast
// \u5047\u8BBE\u8FD4\u56DE\u503C\u4E3A String\uFF0C\u5931\u8D25\u4F1A\u8FD4\u56DE null\uFF0C\u8C03\u7528\u5C06\u4F7F\u7528\u539F\u65B9\u6CD5\u4F20\u5165\u7684 args \u81EA\u52A8\u4F20\u53C2
val value = callOriginal<String>()
}
}
fun invokeOriginal(vararg args: Any?): Any?
fun <T> invokeOriginal(vararg args: Any?): T?
\u53D8\u66F4\u8BB0\u5F55
v1.0
\u6DFB\u52A0
v1.1.0
\u4FEE\u6539
\u4E0D\u518D\u9700\u8981\u4F7F\u7528 member.invokeOriginal
\u8FDB\u884C\u8C03\u7528
\u529F\u80FD\u63CF\u8FF0
\u6267\u884C\u539F\u59CB
Member
\u3002
\u8C03\u7528\u81EA\u8EAB\u672A\u8FDB\u884C Hook \u7684\u539F\u59CB Member
\u5E76\u81EA\u5B9A\u4E49 args
\u6267\u884C\u3002
\u529F\u80FD\u5B9E\u4F8B
\u6B64\u65B9\u6CD5\u53EF\u4EE5 invoke
\u539F\u59CB\u672A\u7ECF Hook \u7684 Member
\u5BF9\u8C61\uFF0C\u53EF\u81EA\u5B9A\u4E49\u9700\u8981\u8C03\u7528\u7684\u53C2\u6570\u5185\u5BB9\u3002
\u8C03\u7528\u81EA\u8EAB\u539F\u59CB\u7684\u65B9\u6CD5\u4E0D\u4F1A\u518D\u7ECF\u8FC7\u5F53\u524D beforeHook
\u3001afterHook
\u4EE5\u53CA replaceUnit
\u3001replaceAny
\u3002
\u6BD4\u5982\u6211\u4EEC Hook \u7684\u8FD9\u4E2A\u65B9\u6CD5\u88AB\u8FD9\u6837\u8C03\u7528 test("test value")
\uFF0C\u4F7F\u7528\u6B64\u65B9\u6CD5\u53EF\u81EA\u5B9A\u4E49\u5176\u4E2D\u7684 args
\u4F5C\u4E3A\u53C2\u6570\u3002
\u793A\u4F8B\u5982\u4E0B
injectMember {
method {
name = "test"
param(StringType)
returnType = StringType
}
afterHook {
// <\u65B9\u68481> \u4E0D\u4F7F\u7528\u6CDB\u578B\uFF0C\u4E0D\u83B7\u53D6\u65B9\u6CD5\u6267\u884C\u7ED3\u679C
invokeOriginal("test value")
// <\u65B9\u68482> \u4F7F\u7528\u6CDB\u578B\uFF0C\u5DF2\u77E5\u65B9\u6CD5\u6267\u884C\u7ED3\u679C\u53C2\u6570\u7C7B\u578B\u8FDB\u884C cast\uFF0C\u5047\u8BBE\u8FD4\u56DE\u503C\u4E3A String\uFF0C\u5931\u8D25\u4F1A\u8FD4\u56DE null
val value = invokeOriginal<String>("test value")
}
}
fun resultTrue()
\u53D8\u66F4\u8BB0\u5F55
v1.0
\u6DFB\u52A0
\u529F\u80FD\u63CF\u8FF0
\u8BBE\u7F6E\u5F53\u524D Hook \u5BF9\u8C61\u65B9\u6CD5\u7684
result
\u8FD4\u56DE\u503C\u4E3Atrue
\u3002
\u7279\u522B\u6CE8\u610F
\u8BF7\u786E\u4FDD result \u7C7B\u578B\u4E3A Boolean\u3002
fun resultFalse()
\u53D8\u66F4\u8BB0\u5F55
v1.0
\u6DFB\u52A0
\u529F\u80FD\u63CF\u8FF0
\u8BBE\u7F6E\u5F53\u524D Hook \u5BF9\u8C61\u65B9\u6CD5\u7684
result
\u8FD4\u56DE\u503C\u4E3Afalse
\u3002
\u7279\u522B\u6CE8\u610F
\u8BF7\u786E\u4FDD result \u7C7B\u578B\u4E3A Boolean\u3002
fun resultNull()
\u53D8\u66F4\u8BB0\u5F55
v1.0
\u6DFB\u52A0
\u529F\u80FD\u63CF\u8FF0
\u6CE8\u610F
\u6B64\u65B9\u6CD5\u5C06\u5F3A\u5236\u8BBE\u7F6E Hook \u5BF9\u8C61\u65B9\u6CD5\u7684 result \u4E3A null\u3002
inner class ArgsIndexCondition internal constructor()
\u53D8\u66F4\u8BB0\u5F55
v1.0.75
\u65B0\u589E
\u529F\u80FD\u63CF\u8FF0
\u5BF9\u65B9\u6CD5\u53C2\u6570\u7684\u6570\u7EC4\u4E0B\u6807\u8FDB\u884C\u5B9E\u4F8B\u5316\u7C7B\u3002
fun first(): ArgsModifyer
\u53D8\u66F4\u8BB0\u5F55
v1.0.75
\u65B0\u589E
\u529F\u80FD\u63CF\u8FF0
\u83B7\u53D6\u5F53\u524D Hook \u5BF9\u8C61\u7684
method
\u6216constructor
\u7684\u53C2\u6570\u6570\u7EC4\u7B2C\u4E00\u4F4D\u3002
fun last(): ArgsModifyer
\u53D8\u66F4\u8BB0\u5F55
v1.0.75
\u65B0\u589E
\u529F\u80FD\u63CF\u8FF0
\u83B7\u53D6\u5F53\u524D Hook \u5BF9\u8C61\u7684
method
\u6216constructor
\u7684\u53C2\u6570\u6570\u7EC4\u6700\u540E\u4E00\u4F4D\u3002
inner class ArgsModifyer internal constructor(private val index: Int)
\u53D8\u66F4\u8BB0\u5F55
v1.0
\u6DFB\u52A0
\u529F\u80FD\u63CF\u8FF0
\u5BF9\u65B9\u6CD5\u53C2\u6570\u7684\u4FEE\u6539\u8FDB\u884C\u5B9E\u4F8B\u5316\u7C7B\u3002
fun <T> cast(): T?
\u53D8\u66F4\u8BB0\u5F55
v1.0.66
\u65B0\u589E
v1.0.68
\u4FEE\u6539
\u4FEE\u6539 \u4E3A of
cast
\u529F\u80FD\u63CF\u8FF0
\u5F97\u5230\u65B9\u6CD5\u53C2\u6570\u7684\u5B9E\u4F8B\u5BF9\u8C61
T
\u3002
fun byte(): Byte?
\u53D8\u66F4\u8BB0\u5F55
v1.0.68
\u65B0\u589E
\u529F\u80FD\u63CF\u8FF0
\u5F97\u5230\u65B9\u6CD5\u53C2\u6570\u7684\u5B9E\u4F8B\u5BF9\u8C61 Byte\u3002
fun int(): Int
\u53D8\u66F4\u8BB0\u5F55
v1.0.66
\u65B0\u589E
v1.0.68
\u4FEE\u6539
\u4FEE\u6539 \u4E3A ofInt
int
\u529F\u80FD\u63CF\u8FF0
\u5F97\u5230\u65B9\u6CD5\u53C2\u6570\u7684\u5B9E\u4F8B\u5BF9\u8C61 Int\u3002
fun long(): Long
\u53D8\u66F4\u8BB0\u5F55
v1.0.66
\u65B0\u589E
v1.0.68
\u4FEE\u6539
\u4FEE\u6539 \u4E3A ofLong
long
\u529F\u80FD\u63CF\u8FF0
\u5F97\u5230\u65B9\u6CD5\u53C2\u6570\u7684\u5B9E\u4F8B\u5BF9\u8C61 Long\u3002
fun short(): Short
\u53D8\u66F4\u8BB0\u5F55
v1.0.66
\u65B0\u589E
v1.0.68
\u4FEE\u6539
\u4FEE\u6539 \u4E3A ofShort
short
\u529F\u80FD\u63CF\u8FF0
\u5F97\u5230\u65B9\u6CD5\u53C2\u6570\u7684\u5B9E\u4F8B\u5BF9\u8C61 Short\u3002
fun double(): Double
\u53D8\u66F4\u8BB0\u5F55
v1.0.66
\u65B0\u589E
v1.0.68
\u4FEE\u6539
\u4FEE\u6539 \u4E3A ofDouble
double
\u529F\u80FD\u63CF\u8FF0
\u5F97\u5230\u65B9\u6CD5\u53C2\u6570\u7684\u5B9E\u4F8B\u5BF9\u8C61 Double\u3002
fun float(): Float
\u53D8\u66F4\u8BB0\u5F55
v1.0.66
\u65B0\u589E
v1.0.68
\u4FEE\u6539
\u4FEE\u6539 \u4E3A ofFloat
float
\u529F\u80FD\u63CF\u8FF0
\u5F97\u5230\u65B9\u6CD5\u53C2\u6570\u7684\u5B9E\u4F8B\u5BF9\u8C61 Float\u3002
fun string(): String
\u53D8\u66F4\u8BB0\u5F55
v1.0.66
\u65B0\u589E
v1.0.68
\u4FEE\u6539
\u4FEE\u6539 \u4E3A ofString
string
\u529F\u80FD\u63CF\u8FF0
\u5F97\u5230\u65B9\u6CD5\u53C2\u6570\u7684\u5B9E\u4F8B\u5BF9\u8C61 String\u3002
fun char(): Char
\u53D8\u66F4\u8BB0\u5F55
v1.0.68
\u65B0\u589E
\u529F\u80FD\u63CF\u8FF0
\u5F97\u5230\u65B9\u6CD5\u53C2\u6570\u7684\u5B9E\u4F8B\u5BF9\u8C61 Char\u3002
fun boolean(): Boolean
\u53D8\u66F4\u8BB0\u5F55
v1.0.66
\u65B0\u589E
v1.0.68
\u4FEE\u6539
\u4FEE\u6539 \u4E3A ofBoolean
boolean
\u529F\u80FD\u63CF\u8FF0
\u5F97\u5230\u65B9\u6CD5\u53C2\u6570\u7684\u5B9E\u4F8B\u5BF9\u8C61 Boolean\u3002
fun any(): Any?
\u53D8\u66F4\u8BB0\u5F55
v1.0.77
\u65B0\u589E
\u529F\u80FD\u63CF\u8FF0
\u5F97\u5230\u65B9\u6CD5\u53C2\u6570\u7684\u5B9E\u4F8B\u5BF9\u8C61 Any\u3002
inline fun <reified T> array(): Array<T>
\u53D8\u66F4\u8BB0\u5F55
v1.0.68
\u65B0\u589E
\u529F\u80FD\u63CF\u8FF0
\u5F97\u5230\u65B9\u6CD5\u53C2\u6570\u7684\u5B9E\u4F8B\u5BF9\u8C61 Array\u3002
inline fun <reified T> list(): List<T>
\u53D8\u66F4\u8BB0\u5F55
v1.0.68
\u65B0\u589E
\u529F\u80FD\u63CF\u8FF0
\u5F97\u5230\u65B9\u6CD5\u53C2\u6570\u7684\u5B9E\u4F8B\u5BF9\u8C61 List\u3002
fun <T> set(any: T?)
\u53D8\u66F4\u8BB0\u5F55
v1.0
\u6DFB\u52A0
\u529F\u80FD\u63CF\u8FF0
\u8BBE\u7F6E\u65B9\u6CD5\u53C2\u6570\u7684\u5B9E\u4F8B\u5BF9\u8C61\u3002
fun setNull()
\u53D8\u66F4\u8BB0\u5F55
v1.0
\u6DFB\u52A0
\u529F\u80FD\u63CF\u8FF0
\u8BBE\u7F6E\u65B9\u6CD5\u53C2\u6570\u7684\u5B9E\u4F8B\u5BF9\u8C61\u4E3A
null
\u3002
fun setTrue()
\u53D8\u66F4\u8BB0\u5F55
v1.0
\u6DFB\u52A0
\u529F\u80FD\u63CF\u8FF0
\u8BBE\u7F6E\u65B9\u6CD5\u53C2\u6570\u7684\u5B9E\u4F8B\u5BF9\u8C61\u4E3A
true
\u3002
\u7279\u522B\u6CE8\u610F
\u8BF7\u786E\u4FDD\u76EE\u6807\u5BF9\u8C61\u7684\u7C7B\u578B\u662F Boolean\u3002
fun setFalse()
\u53D8\u66F4\u8BB0\u5F55
v1.0
\u6DFB\u52A0
\u529F\u80FD\u63CF\u8FF0
\u8BBE\u7F6E\u65B9\u6CD5\u53C2\u6570\u7684\u5B9E\u4F8B\u5BF9\u8C61\u4E3A
false
\u3002
\u7279\u522B\u6CE8\u610F
\u8BF7\u786E\u4FDD\u76EE\u6807\u5BF9\u8C61\u7684\u7C7B\u578B\u662F Boolean\u3002