LLVM  15.0.0git
Public Member Functions | Public Attributes | List of all members
llvm::objcopy::coff::Object Struct Reference

#include "ObjCopy/COFF/COFFObject.h"

Collaboration diagram for llvm::objcopy::coff::Object:
Collaboration graph

Public Member Functions

ArrayRef< SymbolgetSymbols () const
iterator_range< std::vector< Symbol >::iterator > getMutableSymbols ()
const SymbolfindSymbol (size_t UniqueId) const
void addSymbols (ArrayRef< Symbol > NewSymbols)
Error removeSymbols (function_ref< Expected< bool >(const Symbol &)> ToRemove)
Error markSymbols ()
ArrayRef< SectiongetSections () const
iterator_range< std::vector< Section >::iterator > getMutableSections ()
const SectionfindSection (ssize_t UniqueId) const
void addSections (ArrayRef< Section > NewSections)
void removeSections (function_ref< bool(const Section &)> ToRemove)
void truncateSections (function_ref< bool(const Section &)> ToTruncate)

Public Attributes

bool IsPE = false
object::dos_header DosHeader
ArrayRef< uint8_t > DosStub
object::coff_file_header CoffFileHeader
bool Is64 = false
object::pe32plus_header PeHeader
uint32_t BaseOfData = 0
std::vector< object::data_directoryDataDirectories

Detailed Description

Definition at line 96 of file COFFObject.h.

Member Function Documentation

◆ addSections()

void llvm::objcopy::coff::Object::addSections ( ArrayRef< Section NewSections)

Definition at line 68 of file COFFObject.cpp.

References S.

Referenced by llvm::objcopy::coff::addSection().

◆ addSymbols()

void llvm::objcopy::coff::Object::addSymbols ( ArrayRef< Symbol NewSymbols)

Definition at line 19 of file COFFObject.cpp.

References S.

◆ findSection()

const Section * llvm::objcopy::coff::Object::findSection ( ssize_t  UniqueId) const

Definition at line 85 of file COFFObject.cpp.

◆ findSymbol()

const Symbol * llvm::objcopy::coff::Object::findSymbol ( size_t  UniqueId) const

◆ getMutableSections()

iterator_range<std::vector<Section>::iterator> llvm::objcopy::coff::Object::getMutableSections ( )

Definition at line 129 of file COFFObject.h.

References llvm::make_range().

Referenced by llvm::objcopy::coff::handleArgs().

◆ getMutableSymbols()

iterator_range<std::vector<Symbol>::iterator> llvm::objcopy::coff::Object::getMutableSymbols ( )

Definition at line 113 of file COFFObject.h.

References llvm::make_range().

Referenced by llvm::objcopy::coff::handleArgs().

◆ getSections()

ArrayRef<Section> llvm::objcopy::coff::Object::getSections ( ) const

Definition at line 126 of file COFFObject.h.

Referenced by llvm::objcopy::coff::getNextRVA().

◆ getSymbols()

ArrayRef<Symbol> llvm::objcopy::coff::Object::getSymbols ( ) const

Definition at line 110 of file COFFObject.h.

◆ markSymbols()

Error llvm::objcopy::coff::Object::markSymbols ( )

◆ removeSections()

void llvm::objcopy::coff::Object::removeSections ( function_ref< bool(const Section &)>  ToRemove)

◆ removeSymbols()

Error llvm::objcopy::coff::Object::removeSymbols ( function_ref< Expected< bool >(const Symbol &)>  ToRemove)

◆ truncateSections()

void llvm::objcopy::coff::Object::truncateSections ( function_ref< bool(const Section &)>  ToTruncate)

Definition at line 120 of file COFFObject.cpp.

Referenced by llvm::objcopy::coff::handleArgs().

Member Data Documentation

◆ BaseOfData

uint32_t llvm::objcopy::coff::Object::BaseOfData = 0

Definition at line 106 of file COFFObject.h.

◆ CoffFileHeader

object::coff_file_header llvm::objcopy::coff::Object::CoffFileHeader

Definition at line 102 of file COFFObject.h.

◆ DataDirectories

std::vector<object::data_directory> llvm::objcopy::coff::Object::DataDirectories

Definition at line 108 of file COFFObject.h.

◆ DosHeader

object::dos_header llvm::objcopy::coff::Object::DosHeader

Definition at line 99 of file COFFObject.h.

◆ DosStub

ArrayRef<uint8_t> llvm::objcopy::coff::Object::DosStub

Definition at line 100 of file COFFObject.h.

◆ Is64

bool llvm::objcopy::coff::Object::Is64 = false

Definition at line 104 of file COFFObject.h.

◆ IsPE

bool llvm::objcopy::coff::Object::IsPE = false

◆ PeHeader

object::pe32plus_header llvm::objcopy::coff::Object::PeHeader

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