/* Ċ Ġ* ĠCreated Ġby Ġel ie k Ġon Ġ 9 / 2 6 / 2 0 1 9 Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 1 9 Ġel ie kar ou z . ĠAll Ġrights Ġreserved . Ċ Ġ*/ Ċ Ċ package Ġcom . feedback tree . flow . core Ċ Ċ data Ġclass ĠFlow < Input T Ġ: ĠAny , ĠState T Ġ: ĠAny , ĠEvent T Ġ: ĠAny , ĠOutput T Ġ: ĠAny , ĠScreen T >( ĊĠĠĠ Ġval ĠinitialState : Ġ( Input T ) Ġ-> ĠState T , ĊĠĠĠ Ġval Ġstep per : Ġ( State T , ĠEvent T ) Ġ-> ĠStep < State T , ĠOutput T >, ĊĠĠĠ Ġval Ġfeedback s : ĠList < Feedback < State T , ĠEvent T >> Ġ= ĠlistOf (), ĊĠĠĠ Ġval Ġrender : Ġ( State T , ĠRendering Context < Event T , ĠOutput T >) Ġ-> ĠScreen T Ċ )