# Class Uq_engines.stream_seq_engine

    class ['a] stream_seq_engine : 'a -> ('a -> 'a #engine) Stream.t -> Unixqueue.event_system -> ['a] engine

`let se = new stream_seq_engine x0 s esys`: The constructed engine `se` fetches functions `f : 'a -> 'a #engine` from the stream `s`, and runs the engines obtained by calling these functions `e = f x` one after the other. Each function call gets the result of the previous engine as argument. The first call gets `x0` as argument.

If one of the engines `e` transitions into an error or aborted state, `se` will also do that. If `se` is aborted, this is passed down to the currently running engine `e`.