Modify merge buildOfAny method to buildOf method in ReflectionFactory

This commit is contained in:
2022-09-03 02:35:13 +08:00
parent 1f191f7cf3
commit 1b35a2e417
2 changed files with 25 additions and 9 deletions

View File

@@ -463,11 +463,7 @@ inline fun <reified T : Any> T.current(ignored: Boolean, initiate: CurrentClass.
> 获得当前实例的类操作对象。 > 获得当前实例的类操作对象。
### Class.buildOfAny *- ext-method* ### ~~Class.buildOfAny *- ext-method*~~ <!-- {docsify-ignore} -->
```kotlin
inline fun Class<*>.buildOfAny(vararg param: Any?, initiate: ConstructorCondition): Any?
```
**变更记录** **变更记录**
@@ -477,12 +473,16 @@ inline fun Class<*>.buildOfAny(vararg param: Any?, initiate: ConstructorConditio
将方法体进行 inline 将方法体进行 inline
**功能描述** `v1.0.93` `作废`
> 通过构造方法创建新实例,任意类型 `Any`。 请转移到 `buildOf` 方法
### Class.buildOf *- ext-method* ### Class.buildOf *- ext-method*
```kotlin
inline fun Class<*>.buildOf(vararg param: Any?, initiate: ConstructorCondition): Any?
```
```kotlin ```kotlin
inline fun <T> Class<*>.buildOf(vararg param: Any?, initiate: ConstructorCondition): T? inline fun <T> Class<*>.buildOf(vararg param: Any?, initiate: ConstructorCondition): T?
``` ```
@@ -495,9 +495,13 @@ inline fun <T> Class<*>.buildOf(vararg param: Any?, initiate: ConstructorConditi
将方法体进行 inline 将方法体进行 inline
`v1.0.93` `修改`
加入无泛型方法 `buildOf`
**功能描述** **功能描述**
> 通过构造方法创建新实例,指定类型 `T`。 > 通过构造方法创建新实例,指定类型 `T` 或任意类型 `Any`
### Class.allMethods *- ext-method* ### Class.allMethods *- ext-method*

View File

@@ -186,13 +186,24 @@ inline fun <reified T : Any> T.current(ignored: Boolean = false, initiate: Curre
return this return this
} }
/**
* 通过构造方法创建新实例 - 任意类型 [Any]
*
* - ❗此方法已弃用 - 在之后的版本中将直接被删除
*
* - ❗请现在转移到 [buildOf]
* @return [Any] or null
*/
@Deprecated(message = "请使用新的命名方法", replaceWith = ReplaceWith(expression = "buildOf(*param, initiate)"))
fun Class<*>.buildOfAny(vararg param: Any?, initiate: ConstructorCondition = { emptyParam() }) = buildOf(*param, initiate)
/** /**
* 通过构造方法创建新实例 - 任意类型 [Any] * 通过构造方法创建新实例 - 任意类型 [Any]
* @param param 方法参数 * @param param 方法参数
* @param initiate 查找方法体 * @param initiate 查找方法体
* @return [Any] or null * @return [Any] or null
*/ */
inline fun Class<*>.buildOfAny(vararg param: Any?, initiate: ConstructorCondition = { emptyParam() }) = inline fun Class<*>.buildOf(vararg param: Any?, initiate: ConstructorCondition = { emptyParam() }) =
constructor(initiate).get().call(*param) constructor(initiate).get().call(*param)
/** /**
@@ -201,6 +212,7 @@ inline fun Class<*>.buildOfAny(vararg param: Any?, initiate: ConstructorConditio
* @param initiate 查找方法体 * @param initiate 查找方法体
* @return [T] or null * @return [T] or null
*/ */
@JvmName(name = "buildOf_Generics")
inline fun <T> Class<*>.buildOf(vararg param: Any?, initiate: ConstructorCondition = { emptyParam() }) = inline fun <T> Class<*>.buildOf(vararg param: Any?, initiate: ConstructorCondition = { emptyParam() }) =
constructor(initiate).get().newInstance<T>(*param) constructor(initiate).get().newInstance<T>(*param)