Mercurial > hg > gpsynth
annotate third_party/boost/process/environment.hpp @ 0:add35537fdbb tip
Initial import
author | irh <ian.r.hobson@gmail.com> |
---|---|
date | Thu, 25 Aug 2011 11:05:55 +0100 |
parents | |
children |
rev | line source |
---|---|
ian@0 | 1 // |
ian@0 | 2 // Boost.Process |
ian@0 | 3 // ~~~~~~~~~~~~~ |
ian@0 | 4 // |
ian@0 | 5 // Copyright (c) 2006, 2007 Julio M. Merino Vidal |
ian@0 | 6 // Copyright (c) 2008 Ilya Sokolov, Boris Schaeling |
ian@0 | 7 // Copyright (c) 2009 Boris Schaeling |
ian@0 | 8 // Copyright (c) 2010 Felipe Tanus, Boris Schaeling |
ian@0 | 9 // |
ian@0 | 10 // Distributed under the Boost Software License, Version 1.0. (See accompanying |
ian@0 | 11 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) |
ian@0 | 12 // |
ian@0 | 13 |
ian@0 | 14 /** |
ian@0 | 15 * \file boost/process/environment.hpp |
ian@0 | 16 * |
ian@0 | 17 * Includes the declaration of the environment class. |
ian@0 | 18 */ |
ian@0 | 19 |
ian@0 | 20 #ifndef BOOST_PROCESS_ENVIRONMENT_HPP |
ian@0 | 21 #define BOOST_PROCESS_ENVIRONMENT_HPP |
ian@0 | 22 |
ian@0 | 23 #include <map> |
ian@0 | 24 #include <string> |
ian@0 | 25 |
ian@0 | 26 namespace boost { |
ian@0 | 27 namespace process { |
ian@0 | 28 |
ian@0 | 29 /** |
ian@0 | 30 * Representation of a process' environment variables. |
ian@0 | 31 * |
ian@0 | 32 * The environment is a map that establishes an unidirectional |
ian@0 | 33 * association between variable names and their values and is |
ian@0 | 34 * represented by a string to string map. |
ian@0 | 35 * |
ian@0 | 36 * Variables may be defined to the empty string. Be aware that doing so |
ian@0 | 37 * is not portable: POSIX systems will treat such variables as being |
ian@0 | 38 * defined to the empty value, but Windows systems are not able to |
ian@0 | 39 * distinguish them from undefined variables. |
ian@0 | 40 * |
ian@0 | 41 * Neither POSIX nor Windows systems support a variable with no name. |
ian@0 | 42 * |
ian@0 | 43 * It is worthy to note that the environment is sorted alphabetically. |
ian@0 | 44 * This is provided for-free by the map container used to implement this |
ian@0 | 45 * type, and this behavior is required by Windows systems. |
ian@0 | 46 */ |
ian@0 | 47 typedef std::map<std::string, std::string> environment; |
ian@0 | 48 |
ian@0 | 49 } |
ian@0 | 50 } |
ian@0 | 51 |
ian@0 | 52 #endif |