-consumeNetworkStream :: ([m] -> Task ()) (Shared ([m],Bool,[m],Bool)) -> Task () | iTask m
-consumeNetworkStream processTask channel
- = ((watch channel >>* [OnValue (ifValue ifProcess process)]) <! id) @! ()
- where
- ifProcess (received,receiveStopped,_,_)
- = receiveStopped || (not (isEmpty received))
-
- process (received,receiveStopped,_,_)
- = upd empty channel
- >>| if (isEmpty received) (return ()) (processTask received)
- @! receiveStopped
-
- empty :: ([m],Bool,[m],Bool) -> ([m],Bool,[m],Bool)
- empty (_,rs,s,ss) = ([],rs,s,ss)
+//consumeNetworkStream :: ([m] -> Task ()) (Shared ([m],Bool,[n],Bool)) -> Task () | iTask m & iTask n
+//consumeNetworkStream processTask channel
+// = ((watch channel >>* [OnValue (ifValue ifProcess process)]) <! id) @! ()
+// where
+// ifProcess (received,receiveStopped,_,_)
+// = receiveStopped || (not (isEmpty received))
+//
+// process (received,receiveStopped,_,_)
+// = upd empty channel
+// >>| if (isEmpty received) (return ()) (processTask received)
+// @! receiveStopped
+//
+// empty :: ([m],Bool,[m],Bool) -> ([m],Bool,[m],Bool)
+// empty (_,rs,s,ss) = ([],rs,s,ss)