LLVM 22.0.0git
llvm::ELFExtendedAttrParser Class Reference

#include "llvm/Support/ELFAttrParserExtended.h"

Inheritance diagram for llvm::ELFExtendedAttrParser:
[legend]

Public Member Functions

virtual ~ELFExtendedAttrParser ()
Error parse (ArrayRef< uint8_t > Section, llvm::endianness Endian) override
std::optional< unsignedgetAttributeValue (unsigned Tag) const override
std::optional< unsignedgetAttributeValue (StringRef BuildAttrSubsectionName, unsigned Tag) const override
std::optional< StringRefgetAttributeString (unsigned Tag) const override
std::optional< StringRefgetAttributeString (StringRef BuildAttrSubsectionName, unsigned Tag) const override
 ELFExtendedAttrParser (ScopedPrinter *Sw, const std::vector< SubsectionAndTagToTagName > TagsNamesMap)
 ELFExtendedAttrParser (const std::vector< SubsectionAndTagToTagName > TagsNamesMap)
Public Member Functions inherited from llvm::ELFAttributeParser
virtual ~ELFAttributeParser ()

Protected Member Functions

StringRef getTagName (const StringRef &BuildAttrSubsectionName, const unsigned Tag)

Protected Attributes

ScopedPrinterSw
DataExtractor De {ArrayRef<uint8_t>{}, true, 0}
DataExtractor::Cursor Cursor {0}
SmallVector< BuildAttributeSubSection, 8 > SubSectionVec
const std::vector< SubsectionAndTagToTagNameTagsNamesMap

Detailed Description

Definition at line 25 of file ELFAttrParserExtended.h.

Constructor & Destructor Documentation

◆ ~ELFExtendedAttrParser()

virtual llvm::ELFExtendedAttrParser::~ELFExtendedAttrParser ( )
inlinevirtual

Definition at line 39 of file ELFAttrParserExtended.h.

References Cursor.

◆ ELFExtendedAttrParser() [1/2]

llvm::ELFExtendedAttrParser::ELFExtendedAttrParser ( ScopedPrinter * Sw,
const std::vector< SubsectionAndTagToTagName > TagsNamesMap )
inline

◆ ELFExtendedAttrParser() [2/2]

llvm::ELFExtendedAttrParser::ELFExtendedAttrParser ( const std::vector< SubsectionAndTagToTagName > TagsNamesMap)
inline

Definition at line 53 of file ELFAttrParserExtended.h.

References Sw, and TagsNamesMap.

Member Function Documentation

◆ getAttributeString() [1/2]

std::optional< StringRef > ELFExtendedAttrParser::getAttributeString ( StringRef BuildAttrSubsectionName,
unsigned Tag ) const
overridevirtual

Reimplemented from llvm::ELFAttributeParser.

Definition at line 53 of file ELFAttrParserExtended.cpp.

References SubSectionVec, and llvm::Tag.

◆ getAttributeString() [2/2]

std::optional< StringRef > ELFExtendedAttrParser::getAttributeString ( unsigned Tag) const
overridevirtual

Reimplemented from llvm::ELFAttributeParser.

Definition at line 45 of file ELFAttrParserExtended.cpp.

References assert(), and llvm::Tag.

◆ getAttributeValue() [1/2]

std::optional< unsigned > ELFExtendedAttrParser::getAttributeValue ( StringRef BuildAttrSubsectionName,
unsigned Tag ) const
overridevirtual

Reimplemented from llvm::ELFAttributeParser.

Definition at line 32 of file ELFAttrParserExtended.cpp.

References SubSectionVec, and llvm::Tag.

◆ getAttributeValue() [2/2]

std::optional< unsigned > ELFExtendedAttrParser::getAttributeValue ( unsigned Tag) const
overridevirtual

Reimplemented from llvm::ELFAttributeParser.

Definition at line 24 of file ELFAttrParserExtended.cpp.

References assert(), and llvm::Tag.

◆ getTagName()

StringRef ELFExtendedAttrParser::getTagName ( const StringRef & BuildAttrSubsectionName,
const unsigned Tag )
protected

Definition at line 66 of file ELFAttrParserExtended.cpp.

References llvm::Tag, and TagsNamesMap.

Referenced by parse().

◆ parse()

Member Data Documentation

◆ Cursor

DataExtractor::Cursor llvm::ELFExtendedAttrParser::Cursor {0}
protected

Definition at line 29 of file ELFAttrParserExtended.h.

Referenced by parse(), and ~ELFExtendedAttrParser().

◆ De

DataExtractor llvm::ELFExtendedAttrParser::De {ArrayRef<uint8_t>{}, true, 0}
protected

Definition at line 28 of file ELFAttrParserExtended.h.

Referenced by parse().

◆ SubSectionVec

SmallVector<BuildAttributeSubSection, 8> llvm::ELFExtendedAttrParser::SubSectionVec
protected

Definition at line 32 of file ELFAttrParserExtended.h.

Referenced by getAttributeString(), getAttributeValue(), and parse().

◆ Sw

ScopedPrinter* llvm::ELFExtendedAttrParser::Sw
protected

◆ TagsNamesMap

const std::vector<SubsectionAndTagToTagName> llvm::ELFExtendedAttrParser::TagsNamesMap
protected

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