1 // Copyright (c) 2016 Klemens D. Morgenstern
2 //
3 // Distributed under the Boost Software License, Version 1.0. (See accompanying
4 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
5 
6 
7 #ifndef BOOST_PROCESS_DETAIL_POSIX_ENV_INIT_HPP_
8 #define BOOST_PROCESS_DETAIL_POSIX_ENV_INIT_HPP_
9 
10 
11 #include <boost/process/detail/config.hpp>
12 #include <boost/process/detail/posix/handler.hpp>
13 #include <boost/process/environment.hpp>
14 
15 namespace boost { namespace process { namespace detail { namespace posix {
16 
17 template<typename Char>
18 struct env_init;
19 
20 template<>
21 struct env_init<char> : handler_base_ext
22 {
23     boost::process::environment env;
24 
env_initboost::process::detail::posix::env_init25     env_init(boost::process::environment && env) : env(std::move(env)) {};
env_initboost::process::detail::posix::env_init26     env_init(const boost::process::environment & env) : env(env) {};
27 
28 
29     template <class Executor>
on_setupboost::process::detail::posix::env_init30     void on_setup(Executor &exec) const
31     {
32         exec.env = env._env_impl;
33     }
34 
35 };
36 
37 }}}}
38 
39 
40 
41 #endif /* BOOST_PROCESS_DETAIL_WINDOWS_ENV_INIT_HPP_ */
42