You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
66 lines
1.6 KiB
C++
66 lines
1.6 KiB
C++
#ifndef WEBCC_FS_H_
|
|
#define WEBCC_FS_H_
|
|
|
|
// Use std or boost filesystem according to config.
|
|
|
|
#include "webcc/config.h" // for WEBCC_USE_STD_FILESYSTEM
|
|
|
|
#if WEBCC_USE_STD_FILESYSTEM
|
|
#include <filesystem>
|
|
#include <fstream>
|
|
#else
|
|
#include "boost/filesystem/fstream.hpp"
|
|
#include "boost/filesystem/operations.hpp"
|
|
#include "boost/filesystem/path.hpp"
|
|
#endif // WEBCC_USE_STD_FILESYSTEM
|
|
|
|
namespace webcc {
|
|
namespace fs {
|
|
|
|
#if WEBCC_USE_STD_FILESYSTEM
|
|
|
|
// types
|
|
using std::error_code;
|
|
using std::ifstream;
|
|
using std::ofstream;
|
|
using std::filesystem::path;
|
|
using std::filesystem::filesystem_error;
|
|
|
|
// functions
|
|
using std::filesystem::rename;
|
|
using std::filesystem::remove;
|
|
using std::filesystem::exists;
|
|
using std::filesystem::is_directory;
|
|
using std::filesystem::is_regular_file;
|
|
using std::filesystem::create_directory;
|
|
using std::filesystem::create_directories;
|
|
using std::filesystem::current_path;
|
|
using std::filesystem::temp_directory_path;
|
|
|
|
#else
|
|
|
|
// types
|
|
using boost::system::error_code;
|
|
using boost::filesystem::ifstream;
|
|
using boost::filesystem::ofstream;
|
|
using boost::filesystem::path;
|
|
using boost::filesystem::filesystem_error;
|
|
|
|
// functions
|
|
using boost::filesystem::rename;
|
|
using boost::filesystem::remove;
|
|
using boost::filesystem::exists;
|
|
using boost::filesystem::is_directory;
|
|
using boost::filesystem::is_regular_file;
|
|
using boost::filesystem::create_directory;
|
|
using boost::filesystem::create_directories;
|
|
using boost::filesystem::current_path;
|
|
using boost::filesystem::temp_directory_path;
|
|
|
|
#endif // WEBCC_USE_STD_FILESYSTEM
|
|
|
|
} // namespace fs
|
|
} // namespace webcc
|
|
|
|
#endif // WEBCC_FS_H_
|