package Ġpt . ise l . vs dd ashboard application . activities . adapter Ċ Ċ import Ġandroid . view . View Ċ import Ġandroidx . recyclerview . widget . Diff Util Ċ import Ġpt . ise l . vs dd ashboard application . R Ċ import Ġpt . ise l . vs dd ashboard application . activities . adapter . view holder . V rs ViewHolder Ċ import Ġpt . ise l . vs dd ashboard application . databinding . Item V rs Binding Ċ import Ġpt . ise l . vs dd ashboard application . model . VR S Ċ Ċ class ĠV rs Adapter ( on ClickListener : Ġ( VR S , ĠView ) Ġ-> ĠUnit ) ĊĠĠĠ Ġ: ĠBase Adapter < VR S , ĠV rs ViewHolder , ĠItem V rs Binding >( on ClickListener , Ġdiff ){ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġdiff Ġ= Ġobject : ĠDiff Util . Item Callback < VR S > (){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġare Contents The Same ( old Item : ĠV RS , Ġnew Item : ĠV RS ): ĠBoolean Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġold Item . last Updated Date Ġ== Ġnew Item . last Updated Date ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġare Items The Same ( old Item : ĠV RS , Ġnew Item : ĠV RS ): ĠBoolean Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġold Item . i D Ġ== Ġnew Item . i D ĊĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Layout Res (): ĠInt Ġ= ĠR . layout . item _ v rs ĊĊĠĠĠ Ġoverride Ġfun Ġget ViewHolder ( binding : ĠItem V rs Binding ): ĠV rs ViewHolder Ġ= ĊĠĠĠĠĠĠĠ ĠV rs ViewHolder ( binding ) Ċ Ċ } Ċ