# Class Uq_transfer.receiver

    class receiver : src:Unix.file_descr -> dst:#async_out_channel -> ?close_src:bool -> ?close_dst:bool -> Unixqueue.event_system -> [unit] Uq_engines.engine

This engine copies all data from the `src` file descriptor to the `dst` output channel. The engine attaches immediately to the event system, and detaches automatically.

By default, both the file descriptor and the output channel are closed when the engine stops operation, either successfully or because of an error.

The semantics of the engine is undefined if `src` is not a stream-oriented descriptor.

The engine goes to ``Error` state when either reading from `src` or writing to `dst` raises an unexpected exception.

For every file descriptor event, the state is advanced from ``Working n` to ``Working (n+1)`.

TODO: This class cannot yet cope with Win32 named pipes.

`close_src` : Whether to close `src` when the engine stops (default: `true`)
`close_dst` : Whether to close `dst` when the engine stops (default: `true`)