LLVM  11.0.0git
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 232 of file IRSymtab.h.

Member Typedef Documentation

◆ symbol_range

Definition at line 263 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 255 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 292 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 283 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 295 of file IRSymtab.h.

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

◆ getNumModules()

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

Definition at line 270 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 280 of file IRSymtab.h.

◆ getTargetTriple()

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

Definition at line 277 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 353 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 348 of file IRSymtab.h.


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