## Function template optional_manip

boost::log::optional_manip

## Synopsis

    // In header: <boost/log/utility/manipulators/optional.hpp>

    template<typename OptionalT, typename NoneT>
      boost::enable_if_c<!is_scalar< OptionalT >::value &&!is_array< OptionalT >::value &&!is_scalar< NoneT >::value, optional_manipulator< OptionalT, NoneT > >::type
      optional_manip(OptionalT const & opt, NoneT const & none);

## Description

Optional manipulator generator function.

| Note
Both opt and none objects must outlive the created manipulator object.

Parameters: |
`opt` | Optional value to output. The optional value must support contextual conversion to `bool` and dereferencing, and its dereferencing result must support stream output.
`none` | Marker used to indicate when the value is not present. Optional. If not specified, nothing is output if the value is not present.
Returns: | Manipulator to be inserted into the stream.