package Ġcom . source . br icks . storage . list Ċ Ċ import Ġcom . source . br icks . storage . Storage Ċ Ċ /** Ċ Ġ* ĠClass Ġwhich Ġexposes Ġevery Ġtype Ġof Ġ[ Mutable List ] Ġas Ġ[ Storage ] Ċ Ġ* Ġ*/ Ċ class ĠList Storage < Type >( ĊĠĠĠ Ġprivate Ġval Ġstorage : ĠMutable List < Type > Ċ ) Ġ: ĠStorage < Int , ĠType > Ġ{ ĊĠĠĠ Ġoverride Ġval Ġentries : ĠList < Int > ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġstorage . indices . toList () ĊĊĠĠĠ Ġoverride Ġfun Ġget ( index : ĠInt ): ĠType Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġstorage [ index ] ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset ( index : ĠInt , Ġvalue : ĠType ) Ġ{ ĊĠĠĠĠĠĠĠ Ġstorage [ index ] Ġ= Ġvalue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġremove ( id : ĠInt ): ĠType Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġstorage . remove At ( id ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġclear () Ġ{ ĊĠĠĠĠĠĠĠ Ġstorage . clear () ĊĠĠĠ Ġ} Ċ } ĊĊ Ċ /** Ċ Ġ* ĠCreates Ġ[ List Storage ] Ġobject Ġusing Ġprovided Ġlist Ġ[ Mutable List ] Ċ Ġ* Ġ*/ Ċ @ Suppress (" NOTH ING _ TO _ INLINE ") Ċ inline Ġfun Ġ< Type > Ġlist Storage ( list : ĠMutable List < Type >): ĠList Storage < Type > Ġ{ ĊĠĠĠ Ġreturn ĠList Storage ( list ) Ċ } Ċ Ċ /** Ċ Ġ* ĠCreates Ġ[ List Storage ] Ġobject Ġusing Ġ[ Mutable List ] Ġimplementation Ċ Ġ* ĠYou Ġcan Ġinitialize Ġmap Ġusing Ġ[ element ] Ġargument Ċ Ġ* Ġ*/ Ċ @ Suppress (" NOTH ING _ TO _ INLINE ") Ċ inline Ġfun Ġ< Type > Ġlist Storage ( var arg Ġelement : ĠType ): ĠList Storage < Type > Ġ{ ĊĠĠĠ Ġreturn Ġlist Storage ( ĊĠĠĠĠĠĠĠ Ġmutable ListOf (* element ) ĊĠĠĠ Ġ) Ċ }