9#ifndef LLVM_CLANG_INSTALLAPI_CONTEXT_H
10#define LLVM_CLANG_INSTALLAPI_CONTEXT_H
17#include "llvm/ADT/DenseMap.h"
44 std::shared_ptr<FrontendRecordsSlice>
Slice;
53 std::unique_ptr<DylibVerifier>
Verifier =
nullptr;
76 using HeaderMap = llvm::DenseMap<const FileEntry *, HeaderType>;
83 llvm::DenseMap<StringRef, HeaderType> KnownIncludes;
Defines the Diagnostic-related interfaces.
Defines the clang::FileManager interface and associated types.
llvm::MachO::FileType FileType
llvm::MachO::RecordsSlice::BinaryAttrs BinaryAttrs
Concrete class used by the front-end to report problems and issues.
Cached information about one file (either on disk or in the virtual file system).
Implements support for file system lookup, file system caching, and directory search management.
Engages in a tight little dance with the lexer to efficiently preprocess tokens.
The base class of the type hierarchy.
llvm::StringMap< ArchitectureSet > LibAttrs
std::vector< HeaderFile > HeaderSeq
@ Unknown
Unset or unknown type.
std::string findLibrary(StringRef InstallName, FileManager &FM, ArrayRef< std::string > FrameworkSearchPaths, ArrayRef< std::string > LibrarySearchPaths, ArrayRef< std::string > SearchPaths)
Lookup the dylib or TextAPI file location for a system library or framework.
The JSON file list parser is used to communicate input to InstallAPI.
Language
The language for the input, used to select and validate the language standard and possible actions.
Struct used for generating validating InstallAPI.
std::optional< HeaderType > findAndRecordFile(const FileEntry *FE, const Preprocessor &PP)
Record visited files during frontend actions to determine whether to include their declarations for T...
void addKnownHeader(const HeaderFile &H)
Populate entries of headers that should be included for TextAPI generation.
llvm::StringRef OutputLoc
File Path of output location.
FileManager * FM
FileManager for all I/O operations.
LibAttrs Reexports
Install names of reexported libraries of a library.
std::shared_ptr< FrontendRecordsSlice > Slice
Active TargetSlice for symbol record collection.
BinaryAttrs BA
Library attributes that are typically passed as linker inputs.
FileType FT
What encoding to write output as.
std::unique_ptr< DylibVerifier > Verifier
Verifier when binary dylib is passed as input.
DiagnosticsEngine * Diags
DiagnosticsEngine for all error reporting.
Language LangMode
Active language mode to parse in.
HeaderSeq InputHeaders
All headers that represent a library.