package Ġcom . mobile studio . developer . core . adapter Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . view . View Ċ import Ġandroidx . annotation . Id Res Ċ import Ġandroidx . recyclerview . widget . RecyclerView ĊĊ Ċ @ Suppress (" Member Visibility Can Be Private ", Ġ" unused ") Ċ abstract Ġclass ĠBase ViewHolder < T Ġ: ĠAny >( ĊĠĠĠ Ġprivate Ġval Ġcontainer : ĠView Ċ ): ĠRecyclerView . ViewHolder ( container ), ĠB inder < T > Ġ{ ĊĊĠĠĠ Ġprotected Ġval Ġcontext : ĠContext Ġ= Ġcontainer . context ĊĠĠĠ Ġlateinit Ġvar Ġitem : ĠT ĊĊĠĠĠ Ġ@ Throws ( Exception :: class ) ĊĠĠĠ Ġoverride Ġfun Ġbind ( item : ĠT ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . item Ġ= Ġitem ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġopen Ġfun Ġset ClickListener ( listener : Ġ( item : ĠT , Ġposition : ĠInt ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġcontainer . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlistener ( item , Ġadapter Position ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< T Ġ: ĠView > ĠfindViewById (@ Id Res Ġid : ĠInt ): ĠT ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġcontainer . findViewById ( id ) ĊĠĠĠ Ġ} Ċ }