boost-process
boost-process copied to clipboard
Use Boost.Preprocessor to generate C++03 execute() overloads.
This pull request streamlines {posix,windows}/execute.hpp by making Boost.Preprocessor do the multiple levels of repetition, generating BOOST_PROCESS_EXECUTE_INITIALIZERS overloads of the execute() function with appropriate numbers of template parameters, formal parameters and fusion::make_tuple() parameters.
This makes the header shorter, allowing the maintainer to focus on a single instance of the execute() function. It guarantees consistency among all the generated overloads, eliminating the possibility of a typo. And it permits the library user to extend the number of initializer arguments if desired.