package Ġnet . cord a . dj vm . utilities Ċ Ċ import Ġnet . cord a . dj vm . analysis . Source Location Ċ import Ġnet . cord a . dj vm . messages . Message Ċ import Ġnet . cord a . dj vm . messages . Message Collection Ċ Ċ /** Ċ Ġ* ĠUtility Ġfor Ġprocessing Ġa Ġset Ġof Ġentries Ġin Ġa Ġlist Ġmatching Ġa Ġparticular Ġtype . Ċ Ġ*/ Ċ object ĠProcessor Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠProcess Ġentries Ġof Ġtype Ġ[ T ] Ġin Ġthe Ġprovided Ġlist , Ġusing Ġa Ġguard Ġaround Ġthe Ġprocessing Ġof Ġeach Ġitem , Ġcatch ing ĊĠĠĠĠ Ġ* Ġany Ġ[ Message ] Ġthat Ġmight Ġget Ġraised . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġinline Ġfun Ġ< re ified ĠT > Ġprocess Entries OfType ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlist : ĠList <* >, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmessages : ĠMessage Collection , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprocessor : Ġ( T ) Ġ-> ĠUnit ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġfor Ġ( item Ġin Ġlist . filter Is Instance < T >()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprocessor ( item ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( exception : ĠThrowable ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessages . add ( Message . from Throwable ( exception , ĠSource Location ( item . toString ()))) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ } Ċ