LLVM  9.0.0svn
Classes | Public Types | Public Member Functions | List of all members
llvm::irsymtab::Reader Class Reference

This class can be used to read a Symtab and Strtab produced by irsymtab::build. More...

#include "llvm/Object/IRSymtab.h"

Classes

class  SymbolRef
 Ephemeral symbols produced by Reader::symbols() and Reader::module_symbols(). More...
 

Public Types

using symbol_range = iterator_range< object::content_iterator< SymbolRef > >
 

Public Member Functions

 Reader ()=default
 
 Reader (StringRef Symtab, StringRef Strtab)
 
symbol_range symbols () const
 Returns the symbol table for the entire bitcode file. More...
 
size_t getNumModules () const
 
symbol_range module_symbols (unsigned I) const
 Returns a slice of the symbol table for the I'th module in the file. More...
 
StringRef getTargetTriple () const
 
StringRef getSourceFileName () const
 Returns the source file path specified at compile time. More...
 
std::vector< StringRefgetComdatTable () const
 Returns a table with all the comdats used by this file. More...
 
StringRef getCOFFLinkerOpts () const
 COFF-specific: returns linker options specified in the input file. More...
 
std::vector< StringRefgetDependentLibraries () const
 Returns dependent library specifiers. More...
 

Detailed Description

This class can be used to read a Symtab and Strtab produced by irsymtab::build.

Definition at line 231 of file IRSymtab.h.

Member Typedef Documentation

◆ symbol_range

Definition at line 262 of file IRSymtab.h.

Constructor & Destructor Documentation

◆ Reader() [1/2]

llvm::irsymtab::Reader::Reader ( )
default

◆ Reader() [2/2]

llvm::irsymtab::Reader::Reader ( StringRef  Symtab,
StringRef  Strtab 
)
inline

Definition at line 254 of file IRSymtab.h.

Member Function Documentation

◆ getCOFFLinkerOpts()

StringRef llvm::irsymtab::Reader::getCOFFLinkerOpts ( ) const
inline

COFF-specific: returns linker options specified in the input file.

Definition at line 291 of file IRSymtab.h.

◆ getComdatTable()

std::vector<StringRef> llvm::irsymtab::Reader::getComdatTable ( ) const
inline

Returns a table with all the comdats used by this file.

Definition at line 282 of file IRSymtab.h.

References C, and llvm::ArrayRef< T >::size().

◆ getDependentLibraries()

std::vector<StringRef> llvm::irsymtab::Reader::getDependentLibraries ( ) const
inline

Returns dependent library specifiers.

Definition at line 294 of file IRSymtab.h.

References llvm::ArrayRef< T >::size().

◆ getNumModules()

size_t llvm::irsymtab::Reader::getNumModules ( ) const
inline

Definition at line 269 of file IRSymtab.h.

References I, and llvm::ArrayRef< T >::size().

Referenced by llvm::irsymtab::readBitcode().

◆ getSourceFileName()

StringRef llvm::irsymtab::Reader::getSourceFileName ( ) const
inline

Returns the source file path specified at compile time.

Definition at line 279 of file IRSymtab.h.

◆ getTargetTriple()

StringRef llvm::irsymtab::Reader::getTargetTriple ( ) const
inline

Definition at line 276 of file IRSymtab.h.

◆ module_symbols()

Reader::symbol_range llvm::irsymtab::Reader::module_symbols ( unsigned  I) const
inline

Returns a slice of the symbol table for the I'th module in the file.

The symbols enumerated by this method are ephemeral, but they can be copied into an irsymtab::Symbol object.

Definition at line 352 of file IRSymtab.h.

References llvm::irsymtab::storage::Module::Begin, llvm::irsymtab::storage::Module::End, I, and llvm::irsymtab::storage::Module::UncBegin.

◆ symbols()

Reader::symbol_range llvm::irsymtab::Reader::symbols ( ) const
inline

Returns the symbol table for the entire bitcode file.

The symbols enumerated by this method are ephemeral, but they can be copied into an irsymtab::Symbol object.

Definition at line 347 of file IRSymtab.h.


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