how to fix this error: ``` @OptIn(ExperimentalS...
# getting-started
c
how to fix this error:
Copy code
@OptIn(ExperimentalStdlibApi::class)
    override fun <T> sign(json: T): String {
        val jsonStr = Json.encodeToString(json)
        val sign = sign(jsonStr).toHexString()
        return Json.encodeToString(SignJSON(jsonStr, sign))
    }
error is :
Copy code
Cannot use 'T' as reified type parameter. Use a class instead.
c
#C7A1U5PTM
encodeToString
can only be called in an
inline
function, or you need to pass the type as an additional parameter
c
Thanks. Solved by moving out side of the interface definition.
Copy code
@OptIn(ExperimentalStdlibApi::class)
inline fun <reified T> IInstrumentedHandler.sign(json: T): String {
    val jsonStr = Json.encodeToString(json)
    val sign = sign(jsonStr).toHexString()
    return Json.encodeToString(SignJSON(jsonStr, sign))
}