package Ġsu . jf dev . anci . event Ċ Ċ class ĠSimple EventBus < T : ĠAny >( override Ġval Ġloop : ĠEvent Loop , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġval Ġsubscribers : ĠMutable Collection <( T ) Ġ-> ĠUnit >): ĠEvent Bus < T > Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġregister ( subscriber : Ġ( T ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsubscribers Ġ+= Ġsubscriber ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġunregister ( subscriber : Ġ( T ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsubscribers Ġ-= Ġsubscriber ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġhandle ( event : ĠT ) Ġ= Ġloop . handle ( subscribers , Ġevent ) ĊĊĠĠĠ Ġoverride Ġfun Ġsync ( event : ĠT ) Ġ= Ġloop . sync ( subscribers , Ġevent ) Ċ Ċ }