LLVM  15.0.0git
Classes | Public Member Functions | Public Attributes | List of all members
llvm::object::BigArchive Class Reference

#include "llvm/Object/Archive.h"

Inheritance diagram for llvm::object::BigArchive:
Inheritance graph
[legend]
Collaboration diagram for llvm::object::BigArchive:
Collaboration graph
[legend]

Classes

struct  FixLenHdr
 Fixed-Length Header. More...
 

Public Member Functions

 BigArchive (MemoryBufferRef Source, Error &Err)
 
uint64_t getFirstChildOffset () const override
 
uint64_t getLastChildOffset () const
 
bool isEmpty () const override
 
- Public Member Functions inherited from llvm::object::Archive
 Archive (MemoryBufferRef Source, Error &Err)
 
Kind kind () const
 
bool isThin () const
 
child_iterator child_begin (Error &Err, bool SkipInternal=true) const
 
child_iterator child_end () const
 
iterator_range< child_iteratorchildren (Error &Err, bool SkipInternal=true) const
 
symbol_iterator symbol_begin () const
 
symbol_iterator symbol_end () const
 
iterator_range< symbol_iteratorsymbols () const
 
Expected< Optional< Child > > findSym (StringRef name) const
 
bool hasSymbolTable () const
 
StringRef getSymbolTable () const
 
StringRef getStringTable () const
 
uint32_t getNumberOfSymbols () const
 
std::vector< std::unique_ptr< MemoryBuffer > > takeThinBuffers ()
 
std::unique_ptr< AbstractArchiveMemberHeadercreateArchiveMemberHeader (const char *RawHeaderPtr, uint64_t Size, Error *Err) const
 
- Public Member Functions inherited from llvm::object::Binary
 Binary ()=delete
 
 Binary (const Binary &other)=delete
 
virtual ~Binary ()
 
virtual Error initContent ()
 
StringRef getData () const
 
StringRef getFileName () const
 
MemoryBufferRef getMemoryBufferRef () const
 
unsigned int getType () const
 
bool isObject () const
 
bool isSymbolic () const
 
bool isArchive () const
 
bool isMachOUniversalBinary () const
 
bool isTapiUniversal () const
 
bool isELF () const
 
bool isMachO () const
 
bool isCOFF () const
 
bool isXCOFF () const
 
bool isWasm () const
 
bool isCOFFImportFile () const
 
bool isIR () const
 
bool isMinidump () const
 
bool isTapiFile () const
 
bool isLittleEndian () const
 
bool isWinRes () const
 
Triple::ObjectFormatType getTripleObjectFormat () const
 

Public Attributes

const FixLenHdrArFixLenHdr
 
uint64_t FirstChildOffset = 0
 
uint64_t LastChildOffset = 0
 

Additional Inherited Members

- Public Types inherited from llvm::object::Archive
enum  Kind {
  K_GNU, K_GNU64, K_BSD, K_DARWIN,
  K_DARWIN64, K_COFF, K_AIXBIG
}
 
using child_iterator = fallible_iterator< ChildFallibleIterator >
 
- Static Public Member Functions inherited from llvm::object::Archive
static Expected< std::unique_ptr< Archive > > create (MemoryBufferRef Source)
 
static bool classof (Binary const *v)
 
- Static Public Member Functions inherited from llvm::object::Binary
static Error checkOffset (MemoryBufferRef M, uintptr_t Addr, const uint64_t Size)
 
- Static Public Attributes inherited from llvm::object::Archive
static const uint64_t MaxMemberSize = 9999999999
 Size field is 10 decimal digits long. More...
 
- Protected Types inherited from llvm::object::Binary
enum  {
  ID_Archive, ID_MachOUniversalBinary, ID_COFFImportFile, ID_IR,
  ID_TapiUniversal, ID_TapiFile, ID_Minidump, ID_WinRes,
  ID_StartObjects, ID_COFF, ID_XCOFF32, ID_XCOFF64,
  ID_ELF32L, ID_ELF32B, ID_ELF64L, ID_ELF64B,
  ID_MachO32L, ID_MachO32B, ID_MachO64L, ID_MachO64B,
  ID_Wasm, ID_EndObjects
}
 
- Protected Member Functions inherited from llvm::object::Archive
uint64_t getArchiveMagicLen () const
 
void setFirstRegular (const Child &C)
 
- Protected Member Functions inherited from llvm::object::Binary
 Binary (unsigned int Type, MemoryBufferRef Source)
 
- Static Protected Member Functions inherited from llvm::object::Binary
static unsigned int getELFType (bool isLE, bool is64Bits)
 
static unsigned int getMachOType (bool isLE, bool is64Bits)
 
- Protected Attributes inherited from llvm::object::Binary
MemoryBufferRef Data
 

Detailed Description

Definition at line 393 of file Archive.h.

Constructor & Destructor Documentation

◆ BigArchive()

BigArchive::BigArchive ( MemoryBufferRef  Source,
Error Err 
)

Definition at line 1152 of file Archive.cpp.

Member Function Documentation

◆ getFirstChildOffset()

uint64_t llvm::object::BigArchive::getFirstChildOffset ( ) const
inlineoverridevirtual

Reimplemented from llvm::object::Archive.

Definition at line 413 of file Archive.h.

References FirstChildOffset.

◆ getLastChildOffset()

uint64_t llvm::object::BigArchive::getLastChildOffset ( ) const
inline

Definition at line 414 of file Archive.h.

References LastChildOffset.

◆ isEmpty()

bool llvm::object::BigArchive::isEmpty ( ) const
inlineoverridevirtual

Reimplemented from llvm::object::Archive.

Definition at line 415 of file Archive.h.

References llvm::object::Binary::Data, and llvm::MemoryBufferRef::getBufferSize().

Member Data Documentation

◆ ArFixLenHdr

const FixLenHdr* llvm::object::BigArchive::ArFixLenHdr

Definition at line 407 of file Archive.h.

◆ FirstChildOffset

uint64_t llvm::object::BigArchive::FirstChildOffset = 0

Definition at line 408 of file Archive.h.

Referenced by getFirstChildOffset().

◆ LastChildOffset

uint64_t llvm::object::BigArchive::LastChildOffset = 0

Definition at line 409 of file Archive.h.

Referenced by getLastChildOffset().


The documentation for this class was generated from the following files: