1 //===- Filesystem.h ---------------------------------------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #ifndef LLD_FILESYSTEM_H
10 #define LLD_FILESYSTEM_H
11 
12 #include "lld/Common/LLVM.h"
13 #include "llvm/Support/raw_ostream.h"
14 #include <memory>
15 #include <system_error>
16 
17 namespace lld {
18 void unlinkAsync(StringRef path);
19 std::error_code tryCreateFile(StringRef path);
20 std::unique_ptr<llvm::raw_fd_ostream> openFile(StringRef file);
21 std::unique_ptr<llvm::raw_fd_ostream> openLTOOutputFile(StringRef file);
22 } // namespace lld
23 
24 #endif
25