# Module Uq_engines.Operators

    module Operators: sig .. end

Handy operators: `++`, `>>`, and `eps_e`

The most important operators. This module should be opened.

    val (++) : 'a #Uq_engines.engine ->
           ('a -> 'b #Uq_engines.engine) -> 'b Uq_engines.engine

Another name for `qseq_engine`. Use this operator to run engines in sequence:

    	    e1 ++ (fun r1 -> e2) ++ (fun r2 -> e3) ++ ...

Here `rK` is the result of engine `eK`.

Change in OCamlnet-3.6.4: `++` is now `qseq_engine`, and no longer `seq_engine`, and hence it does not support progress reporting anymore. Redefine `++` as `seq_engine` in your own code if you need the old behavior.

    val (>>) : 'a #Uq_engines.engine ->
           ('a Uq_engines.final_state -> 'b Uq_engines.final_state) ->
           'b Uq_engines.engine

Another name for `fmap_engine`. Use this operator to map the final value of an engine:

    	    e >> (function `Done x -> ... | `Error e -> ... | `Aborted -> ...)

    val eps_e : 't Uq_engines.engine_state -> Unixqueue.event_system -> 't Uq_engines.engine

Same as `epsilon_engine`