Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-04-19 08:42:36

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 #include <boost/process/v1/detail/config.hpp>
0010 #include <boost/process/v1/detail/traits/decl.hpp>
0011 
0012 namespace boost { namespace process { BOOST_PROCESS_V1_INLINE namespace v1 {
0013 
0014 template<typename Char>
0015 class basic_environment;
0016 
0017 template<typename Char>
0018 class basic_native_environment;
0019 
0020 namespace detail {
0021 
0022 template<typename Char>
0023 struct env_tag {};
0024 
0025 template<typename Char> struct env_set;
0026 template<typename Char> struct env_append;
0027 
0028 template<typename Char> struct env_reset;
0029 template<typename Char> struct env_init;
0030 
0031 
0032 template<typename Char> struct initializer_tag<env_set<Char>>    { typedef env_tag<Char> type; };
0033 template<typename Char> struct initializer_tag<env_append<Char>> { typedef env_tag<Char> type; };
0034 
0035 template<typename Char> struct initializer_tag<env_reset<Char>> { typedef env_tag<Char> type;};
0036 template<typename Char> struct initializer_tag<env_init <Char>> { typedef env_tag<Char> type;};
0037 
0038 template<typename Char>  struct initializer_tag<::boost::process::v1::basic_environment<Char>>        { typedef env_tag<Char> type; };
0039 template<typename Char>  struct initializer_tag<::boost::process::v1::basic_native_environment<Char>> { typedef env_tag<Char> type; };
0040 
0041 template<> struct initializer_builder<env_tag<char>>;
0042 template<> struct initializer_builder<env_tag<wchar_t>>;
0043 
0044 }
0045 
0046 
0047 }}}
0048 #endif /* INCLUDE_BOOST_PROCESS_DETAIL_ENV_HPP_ */