class WindowsResourceCOFFWriter
Declaration
class WindowsResourceCOFFWriter { /* full declaration omitted */ };
Declared at: llvm/lib/Object/WindowsResource.cpp:599
Member Variables
- private std::unique_ptr<WritableMemoryBuffer> OutputBuffer
- private char* BufferStart
- private uint64_t CurrentOffset = 0
- private COFF::MachineTypes MachineType
- private const WindowsResourceParser::TreeNode& Resources
- private const ArrayRef<std::vector<uint8_t>> Data
- private uint64_t FileSize
- private uint32_t SymbolTableOffset
- private uint32_t SectionOneSize
- private uint32_t SectionOneOffset
- private uint32_t SectionOneRelocations
- private uint32_t SectionTwoSize
- private uint32_t SectionTwoOffset
- private const ArrayRef<std::vector<UTF16>> StringTable
- private std::vector<uint32_t> StringTableOffsets
- private std::vector<uint32_t> DataOffsets
- private std::vector<uint32_t> RelocationAddresses
Method Overview
- public WindowsResourceCOFFWriter(COFF::MachineTypes MachineType, const llvm::object::WindowsResourceParser & Parser, llvm::Error & E)
- private void performFileLayout()
- private void performSectionOneLayout()
- private void performSectionTwoLayout()
- public std::unique_ptr<MemoryBuffer> write(uint32_t TimeDateStamp)
- private void writeCOFFHeader(uint32_t TimeDateStamp)
- private void writeDirectoryStringTable()
- private void writeDirectoryTree()
- private void writeFirstSection()
- private void writeFirstSectionHeader()
- private void writeFirstSectionRelocations()
- private void writeSecondSection()
- private void writeSecondSectionHeader()
- private void writeStringTable()
- private void writeSymbolTable()
Methods
¶WindowsResourceCOFFWriter(
COFF::MachineTypes MachineType,
const llvm::object::WindowsResourceParser&
Parser,
llvm::Error& E)
WindowsResourceCOFFWriter(
COFF::MachineTypes MachineType,
const llvm::object::WindowsResourceParser&
Parser,
llvm::Error& E)
Declared at: llvm/lib/Object/WindowsResource.cpp:601
Parameters
- COFF::MachineTypes MachineType
- const llvm::object::WindowsResourceParser& Parser
- llvm::Error& E
¶void performFileLayout()
void performFileLayout()
Declared at: llvm/lib/Object/WindowsResource.cpp:606
¶void performSectionOneLayout()
void performSectionOneLayout()
Declared at: llvm/lib/Object/WindowsResource.cpp:607
¶void performSectionTwoLayout()
void performSectionTwoLayout()
Declared at: llvm/lib/Object/WindowsResource.cpp:608
¶std::unique_ptr<MemoryBuffer> write(
uint32_t TimeDateStamp)
std::unique_ptr<MemoryBuffer> write(
uint32_t TimeDateStamp)
Declared at: llvm/lib/Object/WindowsResource.cpp:603
Parameters
- uint32_t TimeDateStamp
¶void writeCOFFHeader(uint32_t TimeDateStamp)
void writeCOFFHeader(uint32_t TimeDateStamp)
Declared at: llvm/lib/Object/WindowsResource.cpp:609
Parameters
- uint32_t TimeDateStamp
¶void writeDirectoryStringTable()
void writeDirectoryStringTable()
Declared at: llvm/lib/Object/WindowsResource.cpp:617
¶void writeDirectoryTree()
void writeDirectoryTree()
Declared at: llvm/lib/Object/WindowsResource.cpp:616
¶void writeFirstSection()
void writeFirstSection()
Declared at: llvm/lib/Object/WindowsResource.cpp:612
¶void writeFirstSectionHeader()
void writeFirstSectionHeader()
Declared at: llvm/lib/Object/WindowsResource.cpp:610
¶void writeFirstSectionRelocations()
void writeFirstSectionRelocations()
Declared at: llvm/lib/Object/WindowsResource.cpp:618
¶void writeSecondSection()
void writeSecondSection()
Declared at: llvm/lib/Object/WindowsResource.cpp:613
¶void writeSecondSectionHeader()
void writeSecondSectionHeader()
Declared at: llvm/lib/Object/WindowsResource.cpp:611
¶void writeStringTable()
void writeStringTable()
Declared at: llvm/lib/Object/WindowsResource.cpp:615
¶void writeSymbolTable()
void writeSymbolTable()
Declared at: llvm/lib/Object/WindowsResource.cpp:614