#include "llvm/TextAPI/RecordsSlice.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/TextAPI/InterfaceFile.h"
#include "llvm/TextAPI/Record.h"
#include "llvm/TextAPI/Symbol.h"
#include <utility>
usingnamespacellvm;
usingnamespacellvm::MachO;
Record *RecordsSlice::addRecord(StringRef Name, SymbolFlags Flags,
GlobalRecord::Kind GV, RecordLinkage Linkage) { … }
ObjCContainerRecord *RecordsSlice::findContainer(bool IsIVar,
StringRef Name) const { … }
template <typename R, typename C = RecordMap<R>, typename K = StringRef>
R *findRecord(K Key, const C &Container) { … }
GlobalRecord *RecordsSlice::findGlobal(StringRef Name,
GlobalRecord::Kind GV) const { … }
RecordLinkage
ObjCInterfaceRecord::getLinkageForSymbol(ObjCIFSymbolKind CurrType) const { … }
void ObjCInterfaceRecord::updateLinkageForSymbols(ObjCIFSymbolKind SymType,
RecordLinkage Link) { … }
ObjCInterfaceRecord *RecordsSlice::findObjCInterface(StringRef Name) const { … }
ObjCCategoryRecord *RecordsSlice::findObjCCategory(StringRef ClassToExtend,
StringRef Category) const { … }
ObjCIVarRecord *ObjCContainerRecord::findObjCIVar(StringRef IVar) const { … }
ObjCIVarRecord *RecordsSlice::findObjCIVar(bool IsScopedName,
StringRef Name) const { … }
GlobalRecord *RecordsSlice::addGlobal(StringRef Name, RecordLinkage Linkage,
GlobalRecord::Kind GV, SymbolFlags Flags,
bool Inlined) { … }
ObjCInterfaceRecord *RecordsSlice::addObjCInterface(StringRef Name,
RecordLinkage Linkage,
ObjCIFSymbolKind SymType) { … }
SymbolFlags Record::mergeFlags(SymbolFlags Flags, RecordLinkage Linkage) { … }
bool ObjCInterfaceRecord::addObjCCategory(ObjCCategoryRecord *Record) { … }
ObjCCategoryRecord *RecordsSlice::addObjCCategory(StringRef ClassToExtend,
StringRef Category) { … }
std::vector<ObjCIVarRecord *> ObjCContainerRecord::getObjCIVars() const { … }
std::vector<ObjCCategoryRecord *>
ObjCInterfaceRecord::getObjCCategories() const { … }
ObjCIVarRecord *ObjCContainerRecord::addObjCIVar(StringRef IVar,
RecordLinkage Linkage) { … }
ObjCIVarRecord *RecordsSlice::addObjCIVar(ObjCContainerRecord *Container,
StringRef Name,
RecordLinkage Linkage) { … }
StringRef RecordsSlice::copyString(StringRef String) { … }
RecordsSlice::BinaryAttrs &RecordsSlice::getBinaryAttrs() { … }
void RecordsSlice::visit(RecordVisitor &V) const { … }
static std::unique_ptr<InterfaceFile>
createInterfaceFile(const Records &Slices, StringRef InstallName) { … }
std::unique_ptr<InterfaceFile>
llvm::MachO::convertToInterfaceFile(const Records &Slices) { … }