namespace boost {
namespace pipeline {
template<typename Container> unspecified from(const Container &);
template<typename Iterator>
unspecified from(const Iterator &, const Iterator &);
template<typename QueueBack, typename R>
unspecified from(const std::function< R(QueueBack)> &);
template<typename QueueBack, typename R> unspecified from(R(*)(QueueBack));
template<typename T, typename Callable> unspecified from(const Callable &);
template<typename T> unspecified from(queue< T > &);
template<typename Function,
typename std::enable_if< !std::is_function< Function >::value, int >::type = 0>
unspecified make(const Function &);
template<typename Function,
typename std::enable_if< !std::is_function< Function >::value, int >::type = 0>
unspecified make(Function &);
template<typename Function,
typename std::enable_if< std::is_function< Function >::value, int >::type = 0>
unspecified make(const Function &);
template<typename Callable,
typename std::enable_if<!std::is_function< Callable >::value, int >::type = 0>
unspecified to(const Callable &);
template<typename Function,
typename std::enable_if< std::is_function< Function >::value, int >::type = 0>
unspecified to(const Function &);
}
}
namespace boost {
namespace pipeline {
template<typename Input, typename Output> class segment;
template<typename Output> class segment<terminated, Output>;
template<typename Input> class segment<Input, terminated>;
template<> class segment<terminated, terminated>;
typedef void terminated;
typedef segment< terminated, terminated > plan;
}
}