class WindowsResourceParser::TreeNode

Declaration

class WindowsResourceParser::TreeNode { /* full declaration omitted */ };

Declared at: llvm/include/llvm/Object/WindowsResource.h:166

Member Variables

private bool IsDataNode = false
private uint32_t StringIndex
private uint32_t DataIndex
private Children<uint32_t> IDChildren
private Children<std::string> StringChildren
private uint16_t MajorVersion = 0
private uint16_t MinorVersion = 0
private uint32_t Characteristics = 0
private uint32_t Origin

Method Overview

  • private TreeNode(uint16_t MajorVersion, uint16_t MinorVersion, uint32_t Characteristics, uint32_t Origin, uint32_t DataIndex)
  • private TreeNode(uint32_t StringIndex)
  • private bool addDataChild(uint32_t ID, uint16_t MajorVersion, uint16_t MinorVersion, uint32_t Characteristics, uint32_t Origin, uint32_t DataIndex, llvm::object::WindowsResourceParser::TreeNode *& Result)
  • private bool addEntry(const llvm::object::ResourceEntryRef & Entry, uint32_t Origin, std::vector<std::vector<uint8_t>> & Data, std::vector<std::vector<UTF16>> & StringTable, llvm::object::WindowsResourceParser::TreeNode *& Result)
  • private llvm::object::WindowsResourceParser::TreeNode & addIDChild(uint32_t ID)
  • private bool addLanguageNode(const llvm::object::ResourceEntryRef & Entry, uint32_t Origin, std::vector<std::vector<uint8_t>> & Data, llvm::object::WindowsResourceParser::TreeNode *& Result)
  • private llvm::object::WindowsResourceParser::TreeNode & addNameChild(ArrayRef<llvm::UTF16> NameRef, std::vector<std::vector<UTF16>> & StringTable)
  • private llvm::object::WindowsResourceParser::TreeNode & addNameNode(const llvm::object::ResourceEntryRef & Entry, std::vector<std::vector<UTF16>> & StringTable)
  • private llvm::object::WindowsResourceParser::TreeNode & addTypeNode(const llvm::object::ResourceEntryRef & Entry, std::vector<std::vector<UTF16>> & StringTable)
  • public bool checkIsDataNode() const
  • private static std::unique_ptr<TreeNode> createDataNode(uint16_t MajorVersion, uint16_t MinorVersion, uint32_t Characteristics, uint32_t Origin, uint32_t DataIndex)
  • private static std::unique_ptr<TreeNode> createIDNode()
  • private static std::unique_ptr<TreeNode> createStringNode(uint32_t Index)
  • public uint32_t getCharacteristics() const
  • public uint32_t getDataIndex() const
  • public const Children<uint32_t> & getIDChildren() const
  • public uint16_t getMajorVersion() const
  • public uint16_t getMinorVersion() const
  • public const Children<std::string> & getStringChildren() const
  • public uint32_t getStringIndex() const
  • public uint32_t getTreeSize() const
  • public void print(llvm::ScopedPrinter & Writer, llvm::StringRef Name) const
  • private void shiftDataIndexDown(uint32_t Index)

Methods

TreeNode(uint16_t MajorVersion,
         uint16_t MinorVersion,
         uint32_t Characteristics,
         uint32_t Origin,
         uint32_t DataIndex)

Declared at: llvm/include/llvm/Object/WindowsResource.h:198

Parameters

uint16_t MajorVersion
uint16_t MinorVersion
uint32_t Characteristics
uint32_t Origin
uint32_t DataIndex

TreeNode(uint32_t StringIndex)

Declared at: llvm/include/llvm/Object/WindowsResource.h:197

Parameters

uint32_t StringIndex

bool addDataChild(
    uint32_t ID,
    uint16_t MajorVersion,
    uint16_t MinorVersion,
    uint32_t Characteristics,
    uint32_t Origin,
    uint32_t DataIndex,
    llvm::object::WindowsResourceParser::
        TreeNode*& Result)

Declared at: llvm/include/llvm/Object/WindowsResource.h:212

Parameters

uint32_t ID
uint16_t MajorVersion
uint16_t MinorVersion
uint32_t Characteristics
uint32_t Origin
uint32_t DataIndex
llvm::object::WindowsResourceParser::TreeNode*& Result

bool addEntry(
    const llvm::object::ResourceEntryRef& Entry,
    uint32_t Origin,
    std::vector<std::vector<uint8_t>>& Data,
    std::vector<std::vector<UTF16>>& StringTable,
    llvm::object::WindowsResourceParser::
        TreeNode*& Result)

Declared at: llvm/include/llvm/Object/WindowsResource.h:201

Parameters

const llvm::object::ResourceEntryRef& Entry
uint32_t Origin
std::vector<std::vector<uint8_t>>& Data
std::vector<std::vector<UTF16>>& StringTable
llvm::object::WindowsResourceParser::TreeNode*& Result

llvm::object::WindowsResourceParser::TreeNode&
addIDChild(uint32_t ID)

Declared at: llvm/include/llvm/Object/WindowsResource.h:215

Parameters

uint32_t ID

bool addLanguageNode(
    const llvm::object::ResourceEntryRef& Entry,
    uint32_t Origin,
    std::vector<std::vector<uint8_t>>& Data,
    llvm::object::WindowsResourceParser::
        TreeNode*& Result)

Declared at: llvm/include/llvm/Object/WindowsResource.h:209

Parameters

const llvm::object::ResourceEntryRef& Entry
uint32_t Origin
std::vector<std::vector<uint8_t>>& Data
llvm::object::WindowsResourceParser::TreeNode*& Result

llvm::object::WindowsResourceParser::TreeNode&
addNameChild(
    ArrayRef<llvm::UTF16> NameRef,
    std::vector<std::vector<UTF16>>& StringTable)

Declared at: llvm/include/llvm/Object/WindowsResource.h:216

Parameters

ArrayRef<llvm::UTF16> NameRef
std::vector<std::vector<UTF16>>& StringTable

llvm::object::WindowsResourceParser::TreeNode&
addNameNode(
    const llvm::object::ResourceEntryRef& Entry,
    std::vector<std::vector<UTF16>>& StringTable)

Declared at: llvm/include/llvm/Object/WindowsResource.h:207

Parameters

const llvm::object::ResourceEntryRef& Entry
std::vector<std::vector<UTF16>>& StringTable

llvm::object::WindowsResourceParser::TreeNode&
addTypeNode(
    const llvm::object::ResourceEntryRef& Entry,
    std::vector<std::vector<UTF16>>& StringTable)

Declared at: llvm/include/llvm/Object/WindowsResource.h:205

Parameters

const llvm::object::ResourceEntryRef& Entry
std::vector<std::vector<UTF16>>& StringTable

bool checkIsDataNode() const

Declared at: llvm/include/llvm/Object/WindowsResource.h:178

static std::unique_ptr<TreeNode> createDataNode(
    uint16_t MajorVersion,
    uint16_t MinorVersion,
    uint32_t Characteristics,
    uint32_t Origin,
    uint32_t DataIndex)

Declared at: llvm/include/llvm/Object/WindowsResource.h:191

Parameters

uint16_t MajorVersion
uint16_t MinorVersion
uint32_t Characteristics
uint32_t Origin
uint32_t DataIndex

static std::unique_ptr<TreeNode> createIDNode()

Declared at: llvm/include/llvm/Object/WindowsResource.h:189

static std::unique_ptr<TreeNode> createStringNode(
    uint32_t Index)

Declared at: llvm/include/llvm/Object/WindowsResource.h:188

Parameters

uint32_t Index

uint32_t getCharacteristics() const

Declared at: llvm/include/llvm/Object/WindowsResource.h:177

uint32_t getDataIndex() const

Declared at: llvm/include/llvm/Object/WindowsResource.h:174

const Children<uint32_t>& getIDChildren() const

Declared at: llvm/include/llvm/Object/WindowsResource.h:179

uint16_t getMajorVersion() const

Declared at: llvm/include/llvm/Object/WindowsResource.h:175

uint16_t getMinorVersion() const

Declared at: llvm/include/llvm/Object/WindowsResource.h:176

const Children<std::string>& getStringChildren()
    const

Declared at: llvm/include/llvm/Object/WindowsResource.h:180

uint32_t getStringIndex() const

Declared at: llvm/include/llvm/Object/WindowsResource.h:173

uint32_t getTreeSize() const

Declared at: llvm/include/llvm/Object/WindowsResource.h:172

void print(llvm::ScopedPrinter& Writer,
           llvm::StringRef Name) const

Declared at: llvm/include/llvm/Object/WindowsResource.h:171

Parameters

llvm::ScopedPrinter& Writer
llvm::StringRef Name

void shiftDataIndexDown(uint32_t Index)

Declared at: llvm/include/llvm/Object/WindowsResource.h:218

Parameters

uint32_t Index