package Ġdev . the code war ri or . mirror . impl . member Ċ Ċ import Ġdev . the code war ri or . mirror . type . Class Mirror Ċ import Ġdev . the code war ri or . mirror . type . Type Mirror Ċ import Ġdev . the code war ri or . mirror . impl . utils . unmodifiable Copy Ċ Ċ internal Ġclass ĠExec utable Special ization ( val Ġen closing : ĠClass Mirror ?, Ġarguments : ĠList < Type Mirror > ?) Ġ{ ĊĠĠĠ Ġ// Ġ* Ġ** Note : Ġthis Ġvalue Ġis Ġimmutable ** ĊĠĠĠ Ġval Ġarguments : ĠList < Type Mirror >? Ġ= Ġarguments ?. unmodifiable Copy () ĊĊĠĠĠ Ġfun Ġcopy ( ĊĠĠĠĠĠĠĠ Ġen closing : ĠClass Mirror ? Ġ= Ġthis . enc lo sing , ĊĠĠĠĠĠĠĠ Ġarguments : ĠList < Type Mirror >? Ġ= Ġthis . arguments ĊĠĠĠ Ġ): ĠExec utable Special ization Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠExec utable Special ization ( enc lo sing , Ġarguments ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( this Ġ=== Ġother ) Ġreturn Ġtrue ĊĠĠĠĠĠĠĠ Ġif Ġ( other Ġ! is ĠExec utable Special ization ) Ġreturn Ġfalse ĊĊĠĠĠĠĠĠĠ Ġif Ġ( enc lo sing Ġ!= Ġother . enc lo sing ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( arguments Ġ!= Ġother . arguments ) Ġreturn Ġfalse ĊĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠhashCode (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġresult Ġ= Ġen closing . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġarguments . hashCode () ĊĠĠĠĠĠĠĠ Ġreturn Ġresult ĊĠĠĠ Ġ} Ċ }