File indexing completed on 2025-01-18 09:50:07
0001
0002
0003
0004
0005
0006 #ifndef BOOST_PROCESS_DETAIL_TRAITS_ENV_HPP_
0007 #define BOOST_PROCESS_DETAIL_TRAITS_ENV_HPP_
0008
0009
0010 #include <boost/process/detail/traits/decl.hpp>
0011
0012
0013 namespace boost { namespace process {
0014
0015 template<typename Char>
0016 class basic_environment;
0017
0018 template<typename Char>
0019 class basic_native_environment;
0020
0021 namespace detail {
0022
0023 template<typename Char>
0024 struct env_tag {};
0025
0026
0027
0028
0029 template<typename Char> struct env_set;
0030 template<typename Char> struct env_append;
0031
0032 template<typename Char> struct env_reset;
0033 template<typename Char> struct env_init;
0034
0035
0036 template<typename Char> struct initializer_tag<env_set<Char>> { typedef env_tag<Char> type; };
0037 template<typename Char> struct initializer_tag<env_append<Char>> { typedef env_tag<Char> type; };
0038
0039 template<typename Char> struct initializer_tag<env_reset<Char>> { typedef env_tag<Char> type;};
0040 template<typename Char> struct initializer_tag<env_init <Char>> { typedef env_tag<Char> type;};
0041
0042 template<typename Char> struct initializer_tag<::boost::process::basic_environment<Char>> { typedef env_tag<Char> type; };
0043 template<typename Char> struct initializer_tag<::boost::process::basic_native_environment<Char>> { typedef env_tag<Char> type; };
0044
0045 template<> struct initializer_builder<env_tag<char>>;
0046 template<> struct initializer_builder<env_tag<wchar_t>>;
0047
0048 }
0049
0050
0051 }}
0052
0053 #endif