28#ifndef DART_COMMON_FILESYSTEM_HPP_
29#define DART_COMMON_FILESYSTEM_HPP_
33#if !defined(DART_INCLUDE_STD_FILESYSTEM_EXPERIMENTAL)
36 #if defined(__cpp_lib_filesystem)
37 #define DART_INCLUDE_STD_FILESYSTEM_EXPERIMENTAL 0
40 #elif defined(__cpp_lib_experimental_filesystem)
41 #define DART_INCLUDE_STD_FILESYSTEM_EXPERIMENTAL 1
45 #elif !defined(__has_include)
46 #define DART_INCLUDE_STD_FILESYSTEM_EXPERIMENTAL 1
49 #elif __has_include(<filesystem>)
56 #if __has_include(<yvals_core.h>)
57 #include <yvals_core.h>
60 #if defined(_HAS_CXX17) && _HAS_CXX17
62 #define DART_INCLUDE_STD_FILESYSTEM_EXPERIMENTAL 0
68 #ifndef DART_INCLUDE_STD_FILESYSTEM_EXPERIMENTAL
69 #define DART_INCLUDE_STD_FILESYSTEM_EXPERIMENTAL 1
74 #define DART_INCLUDE_STD_FILESYSTEM_EXPERIMENTAL 0
78 #elif __has_include(<experimental/filesystem>)
79 #define DART_INCLUDE_STD_FILESYSTEM_EXPERIMENTAL 1
83 #error Could not find system header "<filesystem>" or "<experimental/filesystem>"
87 #if DART_INCLUDE_STD_FILESYSTEM_EXPERIMENTAL
89 #include <experimental/filesystem>
93namespace filesystem = ::std::experimental::filesystem;
101 #include <filesystem>
104namespace filesystem = ::std::filesystem;
::std::error_code error_code
Definition Filesystem.hpp:94