package Ġio . github . sy ex . sk adi Ċ Ċ /** Ċ Ġ* ĠAn Ġ` effect ` Ġcombin es Ġa Ġ[ Sk adi Effect ] Ġwith Ġan Ġoptional Ġlist Ġof Ġ[ actions ] Ġto Ġperform Ġas Ġside Ċ Ġ* Ġeffects Ġand Ġan Ġoptional Ġlist Ġof Ġone - time Ġ[ signals ]. ĠIt 's Ġthe Ġoutcome Ġof Ġa Ġ` reducer `. Ċ Ġ*/ Ċ data Ġclass ĠSk adi Effect < State , ĠAction , ĠSignal >( ĊĠĠĠ Ġval Ġstate : ĠState , ĊĠĠĠ Ġval Ġactions : ĠList < Action > Ġ= Ġempty List (), ĊĠĠĠ Ġval Ġsignals : ĠList < Signal > Ġ= Ġempty List () Ċ ) Ċ Ċ /** Ċ Ġ* ĠShort cut Ġto Ġhandle Ġan Ġunexpected Ġ[ change ] Ġin Ġthe Ġgiven Ġ[ state ]. ĠHandling , Ġin Ġthis Ġcase , Ġmeans Ċ Ġ* Ġit Ġwill Ġthrow Ġa Ġmeaningful Ġexception . Ċ Ġ*/ Ċ fun Ġ< State Ġ: ĠSk adi State , ĠAction , ĠSignal > Ġunexpected ( ĊĠĠĠ Ġstate : ĠState , ĊĠĠĠ Ġchange : ĠSk adi Change Ċ ): ĠSk adi Effect < State , ĠAction , ĠSignal > Ġ{ ĊĠĠĠ Ġthrow ĠIllegalStateException ( ĊĠĠĠĠĠĠĠ Ġ" Encounter ed Ġan Ġillegal Ġcombination Ġof Ġstate Ġ$ state Ġwith Ġchange Ġ$ change " ĊĠĠĠ Ġ) Ċ }