// ĠSPDX - License - Identifier : ĠApache - 2 . 0 Ċ Ċ package Ġcom . k yle may es . generator . generate . support Ċ Ċ import Ġcom . k yle may es . generator . registry . Registry Ċ Ċ /** ĠWrap s Ġa ĠVulkan ĠAPI Ġregistry Ġoperation Ġin Ġanother Ġfunction Ġwhich Ġcaches Ġthe Ġresult . Ġ*/ Ċ fun Ġ< T > Ġth unk ( operation : ĠRegistry . () Ġ-> ĠT ): ĠRegistry . () Ġ-> ĠT Ġ{ ĊĠĠĠ Ġvar Ġresult : ĠT ? Ġ= Ġnull ĊĠĠĠ Ġreturn Ġ{ Ġresult Ġ?: Ġoperation ( this ). also Ġ{ Ġr Ġ-> Ġresult Ġ= Ġr Ġ} Ġ} Ċ } Ċ Ċ /** ĠWrap s Ġa ĠVulkan ĠAPI Ġregistry Ġoperation Ġin Ġanother Ġfunction Ġwhich Ġcaches Ġthe Ġresults . Ġ*/ Ċ fun Ġ< T , ĠR > Ġth unk ( operation : ĠRegistry .( T ) Ġ-> ĠR ): ĠRegistry .( T ) Ġ-> ĠR Ġ{ ĊĠĠĠ Ġval Ġresults Ġ= ĠHashMap < T , ĠR >() ĊĠĠĠ Ġreturn Ġ{ Ġresults [ it ] Ġ?: Ġoperation ( this , Ġit ). also Ġ{ Ġr Ġ-> Ġresults [ it ] Ġ= Ġr Ġ} Ġ} Ċ } Ċ