Minix
5.0.0-alpha
module-common
/
dev.racci.minix.api.utils.reflection
/
OverrideUtils
Override
Utils
@
API
(
status
=
API.Status.EXPERIMENTAL
,
since
=
"4.1.0"
)
object
OverrideUtils
Functions
Functions
call
If
Overrides
Function
Link copied to clipboard
inline
fun
<
R
>
callIfOverridesFunction
(
kClass
:
KClass
<
*
>
,
function
:
(
)
->
R
)
:
R
?
@
JvmName
(
name
=
"callIfOverridesFunctionSuspend"
)
inline
fun
<
R
>
callIfOverridesFunction
(
kClass
:
KClass
<
*
>
,
function
:
suspend
(
)
->
R
)
:
R
?
does
Override
Function
Link copied to clipboard
@
JvmName
(
name
=
"doesOverrideKFunction"
)
inline
fun
doesOverrideFunction
(
kClass
:
KClass
<
*
>
,
function
:
KFunction
<
*
>
)
:
Boolean
does
Override
Function
Selector
Link copied to clipboard
@
JvmName
(
name
=
"doesOverrideKFunctionSelector"
)
inline
fun
doesOverrideFunctionSelector
(
kClass
:
KClass
<
*
>
,
selector
:
KFunction
<
*
>
.
(
)
->
Boolean
)
:
Boolean
Does override function selector
does
Override
Property
Link copied to clipboard
@
JvmName
(
name
=
"doesOverrideKProperty"
)
inline
fun
<
T
:
Any
,
R
>
doesOverrideProperty
(
kClass
:
KClass
<
T
>
,
property
:
KProperty
<
R
>
)
:
Boolean
does
Override
Property
Selector
Link copied to clipboard
@
JvmName
(
name
=
"doesOverrideKPropertySelector"
)
inline
fun
<
T
:
Any
>
doesOverridePropertySelector
(
kClass
:
KClass
<
T
>
,
selector
:
KProperty
<
*
>
.
(
)
->
Boolean
)
:
Boolean
if
Overrides
Function
Link copied to clipboard
@
JvmName
(
name
=
"ifOverridesKFunctionKCallable"
)
inline
fun
<
T
:
Any
,
R
>
ifOverridesFunction
(
kClass
:
KClass
<
T
>
,
function
:
(
)
->
R
)
:
R
?
@
JvmName
(
name
=
"ifOverridesKSuspendFunction"
)
inline
fun
<
T
:
Any
,
R
>
ifOverridesFunction
(
kClass
:
KClass
<
T
>
,
function
:
suspend
(
)
->
R
)
:
R
?
@
JvmName
(
name
=
"ifOverridesKFunctionInstance"
)
inline
fun
<
T
:
Any
,
R
>
ifOverridesFunction
(
instance
:
T
,
function
:
KFunction
<
*
>
,
action
:
T
.
(
)
->
R
)
:
R
?
@
JvmName
(
name
=
"ifOverridesKFunction"
)
inline
fun
<
T
:
Any
,
C
:
KFunction
<
*
>
,
R
>
ifOverridesFunction
(
kClass
:
KClass
<
T
>
,
function
:
C
,
action
:
C
.
(
)
->
R
)
:
R
?
if
Overrides
Property
Link copied to clipboard
@
JvmName
(
name
=
"ifOverridesKPropertyInstance"
)
inline
fun
<
T
:
Any
,
R
>
ifOverridesProperty
(
instance
:
T
,
property
:
KProperty
<
*
>
,
action
:
T
.
(
)
->
R
)
:
R
?
@
JvmName
(
name
=
"ifOverridesKProperty"
)
inline
fun
<
T
:
Any
,
C
:
KProperty
<
*
>
,
R
>
ifOverridesProperty
(
kClass
:
KClass
<
T
>
,
property
:
C
,
action
:
C
.
(
)
->
R
)
:
R
?