LLVM API Documentation
#include <Archive.h>
Classes | |
class | Child |
class | child_iterator |
class | Symbol |
class | symbol_iterator |
Public Types | |
enum | Kind { K_GNU, K_BSD, K_COFF } |
Public Member Functions | |
Archive (MemoryBuffer *source, error_code &ec) | |
Kind | kind () const |
child_iterator | begin_children (bool SkipInternal=true) const |
child_iterator | end_children () const |
symbol_iterator | begin_symbols () const |
symbol_iterator | end_symbols () const |
child_iterator | findSym (StringRef name) const |
bool | hasSymbolTable () const |
![]() | |
virtual | ~Binary () |
StringRef | getData () const |
StringRef | getFileName () const |
unsigned int | getType () const |
bool | isObject () const |
bool | isArchive () const |
bool | isMachOUniversalBinary () const |
bool | isELF () const |
bool | isMachO () const |
bool | isCOFF () const |
bool | isLittleEndian () const |
Static Public Member Functions | |
static bool | classof (Binary const *v) |
Additional Inherited Members | |
![]() | |
enum | { ID_Archive, ID_MachOUniversalBinary, ID_StartObjects, ID_COFF, ID_ELF32L, ID_ELF32B, ID_ELF64L, ID_ELF64B, ID_MachO32L, ID_MachO32B, ID_MachO64L, ID_MachO64B, ID_EndObjects } |
![]() | |
Binary (unsigned int Type, MemoryBuffer *Source) | |
![]() | |
static unsigned int | getELFType (bool isLE, bool is64Bits) |
static unsigned int | getMachOType (bool isLE, bool is64Bits) |
![]() | |
MemoryBuffer * | Data |
Archive::Archive | ( | MemoryBuffer * | source, |
error_code & | ec | ||
) |
Definition at line 196 of file Archive.cpp.
References begin_children(), end_children(), llvm::MemoryBuffer::getBufferSize(), llvm::MemoryBuffer::getBufferStart(), llvm::object::Archive::Child::getName(), llvm::object::Archive::Child::getRawName(), llvm::object::object_error::invalid_file_type, K_BSD, K_COFF, K_GNU, Magic, llvm::object::object_error::parse_failed, llvm::StringRef::startswith(), and llvm::object::object_error::success.
Archive::child_iterator Archive::begin_children | ( | bool | SkipInternal = true | ) | const |
Definition at line 312 of file Archive.cpp.
References llvm::object::Binary::Data, end_children(), llvm::MemoryBuffer::getBufferSize(), llvm::MemoryBuffer::getBufferStart(), Magic, and llvm::LibFunc::strlen.
Referenced by Archive().
Archive::symbol_iterator Archive::begin_symbols | ( | ) | const |
Definition at line 387 of file Archive.cpp.
References llvm::StringRef::begin(), llvm::object::Archive::Child::getBuffer(), hasSymbolTable(), K_BSD, K_GNU, kind(), llvm_unreachable, and llvm::ARMBuildAttrs::Symbol.
Referenced by findSym().
Definition at line 184 of file Archive.h.
References llvm::object::Binary::isArchive().
Archive::child_iterator Archive::end_children | ( | ) | const |
Definition at line 324 of file Archive.cpp.
Referenced by Archive(), begin_children(), findSym(), and hasSymbolTable().
Archive::symbol_iterator Archive::end_symbols | ( | ) | const |
Definition at line 410 of file Archive.cpp.
References llvm::StringRef::begin(), llvm::object::Archive::Child::getBuffer(), hasSymbolTable(), K_BSD, K_GNU, kind(), llvm_unreachable, and llvm::ARMBuildAttrs::Symbol.
Referenced by findSym().
Archive::child_iterator Archive::findSym | ( | StringRef | name | ) | const |
Definition at line 430 of file Archive.cpp.
References begin_symbols(), end_children(), end_symbols(), llvm::object::Archive::Symbol::getMember(), and llvm::object::Archive::Symbol::getName().
bool Archive::hasSymbolTable | ( | ) | const |
Definition at line 448 of file Archive.cpp.
References end_children().
Referenced by begin_symbols(), and end_symbols().
|
inline |
Definition at line 173 of file Archive.h.
Referenced by begin_symbols(), and end_symbols().