Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:50:07

0001 // Copyright (c) 2016 Klemens D. Morgenstern
0002 //
0003 // Distributed under the Boost Software License, Version 1.0. (See accompanying
0004 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
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 /* INCLUDE_BOOST_PROCESS_DETAIL_ENV_HPP_ */