1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- // Copyright (c) 2016 Klemens D. Morgenstern
- //
- // Distributed under the Boost Software License, Version 1.0. (See accompanying
- // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- #ifndef BOOST_PROCESS_DETAIL_TRAITS_ENV_HPP_
- #define BOOST_PROCESS_DETAIL_TRAITS_ENV_HPP_
- #include <boost/process/detail/traits/decl.hpp>
- namespace boost { namespace process {
- template<typename Char>
- class basic_environment;
- template<typename Char>
- class basic_native_environment;
- namespace detail {
- template<typename Char>
- struct env_tag {};
- template<typename Char> struct env_set;
- template<typename Char> struct env_append;
- template<typename Char> struct env_reset;
- template<typename Char> struct env_init;
- template<typename Char> struct initializer_tag<env_set<Char>> { typedef env_tag<Char> type; };
- template<typename Char> struct initializer_tag<env_append<Char>> { typedef env_tag<Char> type; };
- template<typename Char> struct initializer_tag<env_reset<Char>> { typedef env_tag<Char> type;};
- template<typename Char> struct initializer_tag<env_init <Char>> { typedef env_tag<Char> type;};
- template<typename Char> struct initializer_tag<::boost::process::basic_environment<Char>> { typedef env_tag<Char> type; };
- template<typename Char> struct initializer_tag<::boost::process::basic_native_environment<Char>> { typedef env_tag<Char> type; };
- template<> struct initializer_builder<env_tag<char>>;
- template<> struct initializer_builder<env_tag<wchar_t>>;
- }
- }}
- #endif /* INCLUDE_BOOST_PROCESS_DETAIL_ENV_HPP_ */
|