package Ġorg . jon ny zz z . cef . generator . kn Ċ Ċ import Ġcom . squareup . kotlin po et . TypeName Ċ import Ġorg . jetbrains . kotlin . descriptors . Property Descriptor Ċ import Ġorg . jetbrains . kotlin . name . Class Id Ċ import Ġorg . jetbrains . kotlin . resolve . descriptor Util . class Id Ċ import Ġorg . jetbrains . kotlin . types . Simple Type Ċ import Ġorg . jon ny zz z . cef . generator . to TypeName ĊĊ Ċ fun Ġdetect Function PropertyType ( prop : ĠProperty Descriptor ): ĠList < TypeName >? Ġ{ ĊĠ Ġval ĠreturnType Ġ= Ġprop . returnType Ġas ? ĠSimple Type ĊĠ Ġif Ġ( returnType Ġ== Ġnull ) Ġ{ ĊĠĠĠ Ġ// println (" PROP : Ġ${ prop . name } Ġ Ġ${ prop . k ReturnType ?. java Class }: Ġ${ prop . k ReturnType } Ġ Ġ- ĠUnknown ĠReturn ĠType ") ĊĠĠĠ Ġreturn Ġnull ĊĠ Ġ} ĊĊĠ Ġif Ġ( returnType . constructor . declaration Descriptor . class Id Ġ!= ĠClass Id . fromString (" kotlin x / c interop / CP o inter ")) Ġ{ ĊĠĠĠ Ġ// println (" PROP : Ġ${ prop . name } Ġ Ġ${ prop . k ReturnType ?. java Class }: Ġ${ prop . k ReturnType } Ġ Ġ- ĠNot ĠC Pointer < *> ") ĊĠĠĠ Ġreturn Ġnull ĊĠ Ġ} ĊĊĠ Ġval Ġc FunctionType Ġ= ĠreturnType . arguments . get OrNull ( 0 ) ĊĠ Ġif Ġ( c FunctionType ?. type ?. constructor ?. declaration Descriptor ?. class Id Ġ!= ĠClass Id . fromString (" kotlin x / c interop / C Function ")) Ġ{ ĊĠĠĠ Ġ// println (" PROP : Ġ${ prop . name } Ġ Ġ${ prop . k ReturnType ?. java Class }: Ġ${ prop . k ReturnType } Ġ Ġ- ĠNot ĠC Pointer < C Function <* >> ") ĊĠĠĠ Ġreturn Ġnull ĊĠ Ġ} ĊĊ Ġreturn Ġc FunctionType . type . arguments [ 0 ]. type . arguments . map Ġ{ Ġit . to TypeName () Ġ} Ċ } ĊĊĊĊ