class Archive
Declaration
class Archive : public Binary { /* full declaration omitted */ };
Declared at: llvm/include/llvm/Object/Archive.h:159
Inherits from: Binary
Member Variables
- protected llvm::StringRef SymbolTable
- protected llvm::StringRef StringTable
- private llvm::StringRef FirstRegularData
- private uint16_t FirstRegularStartOfFile = -1
- private unsigned int Format
- private unsigned int IsThin
- private std::vector<std::unique_ptr<MemoryBuffer>> ThinBuffers
- public static const uint64_t MaxMemberSize = 9999999999L
- Size field is 10 decimal digits long
Inherited from Binary:
Method Overview
- public Archive(llvm::MemoryBufferRef Source, llvm::Error & Err)
- private virtual void anchor()
- public llvm::object::Archive::child_iterator child_begin(llvm::Error & Err, bool SkipInternal = true) const
- public llvm::object::Archive::child_iterator child_end() const
- public iterator_range<llvm::object::Archive::child_iterator> children(llvm::Error & Err, bool SkipInternal = true) const
- public static bool classof(const llvm::object::Binary * v)
- public static Expected<std::unique_ptr<Archive>> create(llvm::MemoryBufferRef Source)
- public std::unique_ptr<AbstractArchiveMemberHeader> createArchiveMemberHeader(const char * RawHeaderPtr, uint64_t Size, llvm::Error * Err) const
- public Expected<Optional<llvm::object::Archive::Child>> findSym(llvm::StringRef name) const
- protected uint64_t getArchiveMagicLen() const
- public static object::Archive::Kind getDefaultKindForHost()
- public virtual uint64_t getFirstChildOffset() const
- public uint32_t getNumberOfSymbols() const
- public llvm::StringRef getStringTable() const
- public llvm::StringRef getSymbolTable() const
- public bool hasSymbolTable() const
- public virtual bool isEmpty() const
- public bool isThin() const
- public llvm::object::Archive::Kind kind() const
- protected void setFirstRegular(const llvm::object::Archive::Child & C)
- public llvm::object::Archive::symbol_iterator symbol_begin() const
- public llvm::object::Archive::symbol_iterator symbol_end() const
- public iterator_range<llvm::object::Archive::symbol_iterator> symbols() const
- public std::vector<std::unique_ptr<MemoryBuffer>> takeThinBuffers()
Inherited from Binary:
- public checkOffset
- public getData
- protected getELFType
- public getFileName
- protected getMachOType
- public getMemoryBufferRef
- public getTripleObjectFormat
- public getType
- public initContent
- public isArchive
- public isCOFF
- public isCOFFImportFile
- public isELF
- public isIR
- public isLittleEndian
- public isMachO
- public isMachOUniversalBinary
- public isMinidump
- public isObject
- public isOffloadFile
- public isSymbolic
- public isTapiFile
- public isTapiUniversal
- public isWasm
- public isWinRes
- public isXCOFF
Methods
¶Archive(llvm::MemoryBufferRef Source,
llvm::Error& Err)
Archive(llvm::MemoryBufferRef Source,
llvm::Error& Err)
Declared at: llvm/include/llvm/Object/Archive.h:333
Parameters
- llvm::MemoryBufferRef Source
- llvm::Error& Err
¶virtual void anchor()
virtual void anchor()
Declared at: llvm/include/llvm/Object/Archive.h:160
¶llvm::object::Archive::child_iterator child_begin(
llvm::Error& Err,
bool SkipInternal = true) const
llvm::object::Archive::child_iterator child_begin(
llvm::Error& Err,
bool SkipInternal = true) const
Declared at: llvm/include/llvm/Object/Archive.h:345
Parameters
- llvm::Error& Err
- bool SkipInternal = true
¶llvm::object::Archive::child_iterator child_end()
const
llvm::object::Archive::child_iterator child_end()
const
Declared at: llvm/include/llvm/Object/Archive.h:346
¶iterator_range<
llvm::object::Archive::child_iterator>
children(llvm::Error& Err,
bool SkipInternal = true) const
iterator_range<
llvm::object::Archive::child_iterator>
children(llvm::Error& Err,
bool SkipInternal = true) const
Declared at: llvm/include/llvm/Object/Archive.h:347
Parameters
- llvm::Error& Err
- bool SkipInternal = true
¶static bool classof(const llvm::object::Binary* v)
static bool classof(const llvm::object::Binary* v)
Declared at: llvm/include/llvm/Object/Archive.h:358
Parameters
- const llvm::object::Binary* v
¶static Expected<std::unique_ptr<Archive>> create(
llvm::MemoryBufferRef Source)
static Expected<std::unique_ptr<Archive>> create(
llvm::MemoryBufferRef Source)
Declared at: llvm/include/llvm/Object/Archive.h:334
Parameters
- llvm::MemoryBufferRef Source
¶std::unique_ptr<AbstractArchiveMemberHeader>
createArchiveMemberHeader(
const char* RawHeaderPtr,
uint64_t Size,
llvm::Error* Err) const
std::unique_ptr<AbstractArchiveMemberHeader>
createArchiveMemberHeader(
const char* RawHeaderPtr,
uint64_t Size,
llvm::Error* Err) const
Declared at: llvm/include/llvm/Object/Archive.h:375
Parameters
- const char* RawHeaderPtr
- uint64_t Size
- llvm::Error* Err
¶Expected<Optional<llvm::object::Archive::Child>>
findSym(llvm::StringRef name) const
Expected<Optional<llvm::object::Archive::Child>>
findSym(llvm::StringRef name) const
Declared at: llvm/include/llvm/Object/Archive.h:361
Parameters
- llvm::StringRef name
¶uint64_t getArchiveMagicLen() const
uint64_t getArchiveMagicLen() const
Declared at: llvm/include/llvm/Object/Archive.h:379
¶static object::Archive::Kind
getDefaultKindForHost()
static object::Archive::Kind
getDefaultKindForHost()
Declared at: llvm/include/llvm/Object/Archive.h:343
¶virtual uint64_t getFirstChildOffset() const
virtual uint64_t getFirstChildOffset() const
Declared at: llvm/include/llvm/Object/Archive.h:368
¶uint32_t getNumberOfSymbols() const
uint32_t getNumberOfSymbols() const
Declared at: llvm/include/llvm/Object/Archive.h:367
¶llvm::StringRef getStringTable() const
llvm::StringRef getStringTable() const
Declared at: llvm/include/llvm/Object/Archive.h:366
¶llvm::StringRef getSymbolTable() const
llvm::StringRef getSymbolTable() const
Declared at: llvm/include/llvm/Object/Archive.h:365
¶bool hasSymbolTable() const
bool hasSymbolTable() const
Declared at: llvm/include/llvm/Object/Archive.h:364
¶virtual bool isEmpty() const
virtual bool isEmpty() const
Declared at: llvm/include/llvm/Object/Archive.h:363
¶bool isThin() const
bool isThin() const
Declared at: llvm/include/llvm/Object/Archive.h:342
¶llvm::object::Archive::Kind kind() const
llvm::object::Archive::Kind kind() const
Declared at: llvm/include/llvm/Object/Archive.h:341
¶void setFirstRegular(
const llvm::object::Archive::Child& C)
void setFirstRegular(
const llvm::object::Archive::Child& C)
Declared at: llvm/include/llvm/Object/Archive.h:380
Parameters
- const llvm::object::Archive::Child& C
¶llvm::object::Archive::symbol_iterator
symbol_begin() const
llvm::object::Archive::symbol_iterator
symbol_begin() const
Declared at: llvm/include/llvm/Object/Archive.h:352
¶llvm::object::Archive::symbol_iterator
symbol_end() const
llvm::object::Archive::symbol_iterator
symbol_end() const
Declared at: llvm/include/llvm/Object/Archive.h:353
¶iterator_range<
llvm::object::Archive::symbol_iterator>
symbols() const
iterator_range<
llvm::object::Archive::symbol_iterator>
symbols() const
Declared at: llvm/include/llvm/Object/Archive.h:354
¶std::vector<std::unique_ptr<MemoryBuffer>>
takeThinBuffers()
std::vector<std::unique_ptr<MemoryBuffer>>
takeThinBuffers()
Declared at: llvm/include/llvm/Object/Archive.h:370