LLVM  3.7.0
Classes | Public Types | Public Member Functions | Static Public Member Functions | List of all members
llvm::object::Archive Class Reference

#include <Archive.h>

Inheritance diagram for llvm::object::Archive:
[legend]
Collaboration diagram for llvm::object::Archive:
[legend]

Classes

class  Child
 
class  child_iterator
 
class  Symbol
 
class  symbol_iterator
 

Public Types

enum  Kind { K_GNU, K_MIPS64, K_BSD, K_COFF }
 

Public Member Functions

 Archive (MemoryBufferRef Source, std::error_code &EC)
 
Kind kind () const
 
bool isThin () const
 
child_iterator child_begin (bool SkipInternal=true) const
 
child_iterator child_end () const
 
iterator_range< child_iteratorchildren (bool SkipInternal=true) const
 
symbol_iterator symbol_begin () const
 
symbol_iterator symbol_end () const
 
iterator_range< symbol_iteratorsymbols () const
 
child_iterator findSym (StringRef name) const
 
bool hasSymbolTable () const
 
child_iterator getSymbolTableChild () const
 
StringRef getSymbolTable () const
 
uint32_t getNumberOfSymbols () const
 
- Public Member Functions inherited from llvm::object::Binary
virtual ~Binary ()
 
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 isELF () const
 
bool isMachO () const
 
bool isCOFF () const
 
bool isIR () const
 
bool isLittleEndian () const
 

Static Public Member Functions

static ErrorOr
< std::unique_ptr< Archive > > 
create (MemoryBufferRef Source)
 
static bool classof (Binary const *v)
 

Additional Inherited Members

- Protected Types inherited from llvm::object::Binary
enum  {
  ID_Archive, ID_MachOUniversalBinary, ID_IR, ID_StartObjects,
  ID_COFF, ID_ELF32L, ID_ELF32B, ID_ELF64L,
  ID_ELF64B, ID_MachO32L, ID_MachO32B, ID_MachO64L,
  ID_MachO64B, ID_EndObjects
}
 
- 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 51 of file Archive.h.

Member Enumeration Documentation

Enumerator
K_GNU 
K_MIPS64 
K_BSD 
K_COFF 

Definition at line 176 of file Archive.h.

Constructor & Destructor Documentation

Archive::Archive ( MemoryBufferRef  Source,
std::error_code &  EC 
)

Member Function Documentation

Archive::child_iterator Archive::child_begin ( bool  SkipInternal = true) const
Archive::child_iterator Archive::child_end ( ) const
iterator_range<child_iterator> llvm::object::Archive::children ( bool  SkipInternal = true) const
inline

Definition at line 188 of file Archive.h.

References child_begin(), and child_end().

static bool llvm::object::Archive::classof ( Binary const v)
inlinestatic

Definition at line 200 of file Archive.h.

References llvm::object::Binary::isArchive().

ErrorOr< std::unique_ptr< Archive > > Archive::create ( MemoryBufferRef  Source)
static
Archive::child_iterator Archive::findSym ( StringRef  name) const
uint32_t Archive::getNumberOfSymbols ( ) const
StringRef llvm::object::Archive::getSymbolTable ( ) const
inline
child_iterator llvm::object::Archive::getSymbolTableChild ( ) const
inline

Definition at line 208 of file Archive.h.

bool Archive::hasSymbolTable ( ) const

Definition at line 545 of file Archive.cpp.

References child_end().

Referenced by symbol_begin(), and symbol_end().

bool llvm::object::Archive::isThin ( ) const
inline

Definition at line 184 of file Archive.h.

Kind llvm::object::Archive::kind ( ) const
inline

Definition at line 183 of file Archive.h.

Referenced by getNumberOfSymbols(), and symbol_begin().

Archive::symbol_iterator Archive::symbol_begin ( ) const
Archive::symbol_iterator Archive::symbol_end ( ) const

Definition at line 508 of file Archive.cpp.

References getNumberOfSymbols(), hasSymbolTable(), and llvm::ARMBuildAttrs::Symbol.

Referenced by findSym(), and symbols().

iterator_range<symbol_iterator> llvm::object::Archive::symbols ( ) const
inline

Definition at line 195 of file Archive.h.

References symbol_begin(), and symbol_end().


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