/* Ċ Ġ* ĠCopyright Ġ 2 0 1 9 ĠApp mat t us ĠLimited Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġcom . app mat t us . kotlin fixture . resolver Ċ Ċ import Ġcom . app mat t us . kotlin fixture . Context Ċ import Ġcom . app mat t us . kotlin fixture . Un resolved Ċ Ċ internal Ġclass ĠPrimitive Array Resolver Ġ: ĠResolver Ġ{ ĊĊĠĠĠ Ġ@ Suppress (" EXPERIMENT AL _ API _ USAGE ", Ġ" Complex Method ") ĊĠĠĠ Ġoverride Ġfun Ġresolve ( context : ĠContext , Ġobj : ĠAny ): ĠAny ? Ġ= Ġwhen Ġ( obj ) Ġ{ ĊĠĠĠĠĠĠĠ ĠBoolean Array :: class Ġ-> Ġcontext . resolve Constructor (:: Boolean Array ) ĊĊĠĠĠĠĠĠĠ ĠByteArray :: class Ġ-> Ġcontext . resolve Constructor (:: ByteArray ) ĊĠĠĠĠĠĠĠ ĠDouble Array :: class Ġ-> Ġcontext . resolve Constructor (:: Double Array ) ĊĠĠĠĠĠĠĠ ĠFloat Array :: class Ġ-> Ġcontext . resolve Constructor (:: Float Array ) ĊĠĠĠĠĠĠĠ ĠInt Array :: class Ġ-> Ġcontext . resolve Constructor (:: IntArray ) ĊĠĠĠĠĠĠĠ ĠLong Array :: class Ġ-> Ġcontext . resolve Constructor (:: Long Array ) ĊĠĠĠĠĠĠĠ ĠShort Array :: class Ġ-> Ġcontext . resolve Constructor (:: Short Array ) ĊĠĠĠĠĠĠĠ ĠChar Array :: class Ġ-> Ġcontext . resolve Constructor (:: CharArray ) ĊĊĠĠĠĠĠĠĠ ĠU ByteArray :: class Ġ-> Ġcontext . resolve Constructor (:: U ByteArray ) ĊĠĠĠĠĠĠĠ ĠUInt Array :: class Ġ-> Ġcontext . resolve Constructor (:: UInt Array ) ĊĠĠĠĠĠĠĠ ĠU Long Array :: class Ġ-> Ġcontext . resolve Constructor (:: UL ong Array ) ĊĠĠĠĠĠĠĠ ĠU Short Array :: class Ġ-> Ġcontext . resolve Constructor (:: U Short Array ) ĊĊĠĠĠĠĠĠĠ Ġelse Ġ-> ĠUn resolved . Unhandled ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġinline Ġfun Ġ< A , Ġre ified ĠT > ĠContext . resolve Constructor ( param : Ġ( size : ĠInt , Ġinit : Ġ( Int ) Ġ-> ĠT ) Ġ-> ĠA ): ĠA Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġparam ( configuration . repeat Count ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠTODO Ġwhat Ġif Ġone Ġof Ġthese Ġis Ġun res olvable ? ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresolve ( T :: class ) Ġas ĠT ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ