/usr/include/boost/wave/util
NameSizeModeActions
cpp_ifblock.hpp50370644editdlrm
cpp_include_paths.hpp196300644editdlrm
cpp_iterator.hpp968640644editdlrm
cpp_macromap.hpp904240644editdlrm
cpp_macromap_predef.hpp106030644editdlrm
cpp_macromap_utils.hpp186410644editdlrm
filesystem_compatibility.hpp53900644editdlrm
file_position.hpp58050644editdlrm
flex_string.hpp733970644editdlrm
functor_input.hpp43760644editdlrm
insert_whitespace_detection.hpp153930644editdlrm
interpret_pragma.hpp85990644editdlrm
iteration_context.hpp28440644editdlrm
macro_definition.hpp77520644editdlrm
macro_helpers.hpp129110644editdlrm
pattern_parser.hpp22200644editdlrm
symbol_table.hpp37650644editdlrm
time_conversion_helper.hpp54560644editdlrm
transform_iterator.hpp31990644editdlrm
unput_queue_iterator.hpp99080644editdlrm
Edit: /usr/include/boost/wave/util/filesystem_compatibility.hpp (5390B)
/*============================================================================= Boost.Wave: A Standard compliant C++ preprocessor library http://www.boost.org/ Copyright (c) 2001-2012 Hartmut Kaiser. 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) =============================================================================*/ #if !defined(BOOST_WAVE_FILESYSTEM_COMPATIBILITY_MAR_09_2009_0142PM) #define BOOST_WAVE_FILESYSTEM_COMPATIBILITY_MAR_09_2009_0142PM #include #include #include #include namespace boost { namespace wave { namespace util { /////////////////////////////////////////////////////////////////////////////// // filesystem wrappers allowing to handle different Boost versions #if !defined(BOOST_FILESYSTEM_NO_DEPRECATED) // interface wrappers for older Boost versions inline boost::filesystem::path initial_path() { return boost::filesystem::initial_path(); } inline boost::filesystem::path current_path() { return boost::filesystem::current_path(); } template inline boost::filesystem::path create_path(String const& p) { #if BOOST_FILESYSTEM_VERSION >= 3 return boost::filesystem::path(p); #else return boost::filesystem::path(p, boost::filesystem::native); #endif } inline std::string leaf(boost::filesystem::path const& p) { #if BOOST_FILESYSTEM_VERSION >= 3 return p.leaf().string(); #else return p.leaf(); #endif } inline boost::filesystem::path branch_path(boost::filesystem::path const& p) { return p.branch_path(); } inline boost::filesystem::path normalize(boost::filesystem::path& p) { return p.normalize().make_preferred(); } inline std::string native_file_string(boost::filesystem::path const& p) { #if BOOST_FILESYSTEM_VERSION >= 3 return p.string(); #else return p.native_file_string(); #endif } inline boost::filesystem::path complete_path( boost::filesystem::path const& p) { #if BOOST_FILESYSTEM_VERSION >= 3 #if BOOST_VERSION >= 105000 return boost::filesystem::complete(p, initial_path()); #else return boost::filesystem3::complete(p, initial_path()); #endif #else return boost::filesystem::complete(p, initial_path()); #endif } inline boost::filesystem::path complete_path( boost::filesystem::path const& p, boost::filesystem::path const& base) { #if BOOST_FILESYSTEM_VERSION >= 3 #if BOOST_VERSION >= 105000 return boost::filesystem::complete(p, base); #else return boost::filesystem3::complete(p, base); #endif #else return boost::filesystem::complete(p, base); #endif } #else // interface wrappers if deprecated functions do not exist inline boost::filesystem::path initial_path() { #if BOOST_FILESYSTEM_VERSION >= 3 #if BOOST_VERSION >= 105000 return boost::filesystem::detail::initial_path(); #else return boost::filesystem3::detail::initial_path(); #endif #else return boost::filesystem::initial_path(); #endif } inline boost::filesystem::path current_path() { #if BOOST_FILESYSTEM_VERSION >= 3 #if BOOST_VERSION >= 105000 return boost::filesystem::current_path(); #else return boost::filesystem3::current_path(); #endif #else return boost::filesystem::current_path(); #endif } template inline boost::filesystem::path create_path(String const& p) { return boost::filesystem::path(p); } inline std::string leaf(boost::filesystem::path const& p) { #if BOOST_VERSION >= 104600 && BOOST_FILESYSTEM_VERSION >= 3 return p.filename().string(); #else return p.filename(); #endif } inline boost::filesystem::path branch_path(boost::filesystem::path const& p) { return p.parent_path(); } inline boost::filesystem::path normalize(boost::filesystem::path& p) { return p; // function doesn't exist anymore } inline std::string native_file_string(boost::filesystem::path const& p) { #if BOOST_VERSION >= 104600 return p.string(); #else return p.file_string(); #endif } inline boost::filesystem::path complete_path( boost::filesystem::path const& p) { #if BOOST_VERSION >= 104600 && BOOST_FILESYSTEM_VERSION >= 3 return boost::filesystem::absolute(p, initial_path()); #else return boost::filesystem::complete(p, initial_path()); #endif } inline boost::filesystem::path complete_path( boost::filesystem::path const& p, boost::filesystem::path const& base) { #if BOOST_VERSION >= 104600 && BOOST_FILESYSTEM_VERSION >= 3 return boost::filesystem::absolute(p, base); #else return boost::filesystem::complete(p, base); #endif } #endif // starting withBoost V1.50 create_directories throws if given an empty path inline bool create_directories(boost::filesystem::path const& p) { if (p.string().empty()) return true; return boost::filesystem::create_directories(p); } }}} #endif