Lines Matching defs:Archive

1 //===- Archive.cpp - ar File Format implementation ------------------------===//
13 #include "llvm/Object/Archive.h"
41 void Archive::anchor() {}
94 ArchiveMemberHeader::ArchiveMemberHeader(const Archive *Parent,
129 BigArchiveMemberHeader::BigArchiveMemberHeader(const Archive *Parent,
157 if (Kind == Archive::K_BSD || Kind == Archive::K_DARWIN64) {
181 const Archive *Parent,
199 const Archive *Parent,
304 if (Parent->kind() == Archive::K_GNU ||
305 Parent->kind() == Archive::K_GNU64) {
461 Archive::Child::Child(const Archive *Parent, StringRef Data,
467 Archive::Child::Child(const Archive *Parent, const char *Start, Error *Err)
522 if (Parent->kind() == Archive::K_AIXBIG) {
542 Expected<uint64_t> Archive::Child::getSize() const {
548 Expected<uint64_t> Archive::Child::getRawSize() const {
552 Expected<bool> Archive::Child::isThinMember() const { return Header->isThin(); }
554 Expected<std::string> Archive::Child::getFullName() const {
572 Expected<StringRef> Archive::Child::getBuffer() const {
594 Expected<Archive::Child> Archive::Child::getNext() const {
625 uint64_t Archive::Child::getChildOffset() const {
632 Expected<StringRef> Archive::Child::getName() const {
645 Expected<MemoryBufferRef> Archive::Child::getMemoryBufferRef() const {
657 Archive::Child::getAsBinary(LLVMContext *Context) const {
668 Expected<std::unique_ptr<Archive>> Archive::create(MemoryBufferRef Source) {
670 std::unique_ptr<Archive> Ret;
676 Ret = std::make_unique<Archive>(Source, Err);
684 Archive::createArchiveMemberHeader(const char *RawHeaderPtr, uint64_t Size,
693 uint64_t Archive::getArchiveMagicLen() const {
703 void Archive::setFirstRegular(const Child &C) {
708 Archive::Archive(MemoryBufferRef Source, Error &Err)
971 object::Archive::Kind Archive::getDefaultKindForTriple(const Triple &T) {
973 return object::Archive::K_DARWIN;
975 return object::Archive::K_AIXBIG;
977 return object::Archive::K_COFF;
978 return object::Archive::K_GNU;
981 object::Archive::Kind Archive::getDefaultKind() {
986 Archive::child_iterator Archive::child_begin(Error &Err,
1002 Archive::child_iterator Archive::child_end() const {
1006 bool Archive::Symbol::isECSymbol() const {
1014 StringRef Archive::Symbol::getName() const {
1020 Expected<Archive::Child> Archive::Symbol::getMember() const {
1090 Archive::Symbol Archive::Symbol::getNext() const {
1132 Archive::symbol_iterator Archive::symbol_begin() const {
1190 Archive::symbol_iterator Archive::symbol_end() const {
1194 Expected<iterator_range<Archive::symbol_iterator>> Archive::ec_symbols() const {
1239 uint32_t Archive::getNumberOfSymbols() const {
1257 uint32_t Archive::getNumberOfECSymbols() const {
1263 Expected<std::optional<Archive::Child>> Archive::findSym(StringRef name) const {
1264 Archive::symbol_iterator bs = symbol_begin();
1265 Archive::symbol_iterator es = symbol_end();
1280 bool Archive::isEmpty() const {
1284 bool Archive::hasSymbolTable() const { return !SymbolTable.empty(); }
1346 : Archive(Source, Err) {
1426 // In order to let the Archive::Symbol::getNext() work for both 32-bit and