### writable_pipe

Typedef for the typical usage of a writable pipe.

    typedef basic_writable_pipe writable_pipe;

##### Types

Name | Description
--- | ---
rebind_executor | Rebinds the pipe type to another executor.
executor_type | The type of the executor associated with the object.
lowest_layer_type | A basic_writable_pipe is always the lowest layer.
native_handle_type | The native representation of a pipe.

##### Member Functions

Name | Description
--- | ---
assign | Assign an existing native pipe to the pipe.
async_write_some | Start an asynchronous write.
basic_writable_pipe [constructor] | Construct a basic_writable_pipe without opening it. — Construct a basic_writable_pipe on an existing native pipe. — Move-construct a basic_writable_pipe from another. — Move-construct a basic_writable_pipe from a pipe of another executor type.
cancel | Cancel all asynchronous operations associated with the pipe.
close | Close the pipe.
get_executor | Get the executor associated with the object.
is_open | Determine whether the pipe is open.
lowest_layer | Get a reference to the lowest layer. — Get a const reference to the lowest layer.
native_handle | Get the native pipe representation.
operator= | Move-assign a basic_writable_pipe from another. — Move-assign a basic_writable_pipe from a pipe of another executor type.
release | Release ownership of the underlying native pipe.
write_some | Write some data to the pipe.
~basic_writable_pipe [destructor] | Destroys the pipe.

The `basic_writable_pipe` class provides a wrapper over pipe functionality.

##### Thread Safety

Distinct objects: Safe.

Shared objects: Unsafe.

##### Requirements

Header: `asio/writable_pipe.hpp`

Convenience header: `asio.hpp`