package Ġcom . p 2 m . core . module . task Ċ Ċ /** Ċ Ġ* ĠTask Ġregister . Ċ Ġ*/ Ċ interface ĠTask Register Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠRegister Ġa Ġtask . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġclazz Ġthe Ġtask Ġclass . ĊĠĠĠĠ Ġ* Ġ@ param Ġinput Ġinput Ġof Ġtask . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun < INPUT > Ġregister ( clazz : ĠClass < out ĠTask < INPUT , Ġ* >>, Ġinput : ĠINPUT ): ĠTask Unit ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠRegister Ġsome Ġtask . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġclazz Ġthe Ġtask Ġclass . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġregisters ( var arg Ġclazz : ĠClass < out ĠTask < *, Ġ* >>) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠFound Ġa Ġtask Ġthat Ġhas Ġbeen Ġregistered . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġfind ( clazz : ĠClass < out ĠTask < *, Ġ* >> ): ĠTask Unit ? ĊĠĠĠĠ Ċ }