1 // 2 // Copyright (c) 2015-2019 Vinnie Falco (vinnie dot falco at gmail dot com) 3 // 4 // Distributed under the Boost Software License, Version 1.0. (See accompanying 5 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 6 // 7 // Official repository: https://github.com/boostorg/beast 8 // 9 10 #ifndef BOOST_BEAST_CORE_FILE_HPP 11 #define BOOST_BEAST_CORE_FILE_HPP 12 13 #include <boost/beast/core/detail/config.hpp> 14 #include <boost/beast/core/file_base.hpp> 15 #include <boost/beast/core/file_posix.hpp> 16 #include <boost/beast/core/file_stdio.hpp> 17 #include <boost/beast/core/file_win32.hpp> 18 19 namespace boost { 20 namespace beast { 21 22 /** An implementation of File. 23 24 This alias is set to the best available implementation 25 of <em>File</em> given the platform and build settings. 26 */ 27 #if BOOST_BEAST_DOXYGEN 28 struct file : file_stdio 29 { 30 }; 31 #else 32 #if BOOST_BEAST_USE_WIN32_FILE 33 using file = file_win32; 34 #elif BOOST_BEAST_USE_POSIX_FILE 35 using file = file_posix; 36 #else 37 using file = file_stdio; 38 #endif 39 #endif 40 41 } // beast 42 } // boost 43 44 #endif 45