MLIR 24.0.0git
mlir::tblgen::EnumInfo Class Reference

#include "mlir/TableGen/EnumInfo.h"

Public Types

enum class  BitEnumSeparatorKind { VerticalBar , Comma , Space }

Public Member Functions

 EnumInfo (const llvm::Record *record)
 EnumInfo (const llvm::Record &record)
 EnumInfo (const llvm::DefInit *init)
bool isSubClassOf (StringRef className) const
bool isEnumAttr () const
std::optional< Attribute > asEnumAttr () const
bool isBitEnum () const
bool isNewStyleBitEnum () const
bool hasParserPrinter () const
StringRef getEnumClassName () const
StringRef getCppNamespace () const
std::string getQualifiedName () const
StringRef getSummary () const
StringRef getDescription () const
int64_t getBitwidth () const
StringRef getUnderlyingType () const
StringRef getUnderlyingToSymbolFnName () const
StringRef getStringToSymbolFnName () const
StringRef getSymbolToStringFnName () const
StringRef getSymbolToStringFnRetType () const
StringRef getMaxEnumValFnName () const
std::vector< EnumCase > getAllCases () const
bool genSpecializedAttr () const
const llvm::Record * getBaseAttrClass () const
StringRef getSpecializedAttrClassName () const
bool printBitEnumPrimaryGroups () const
bool printBitEnumQuoted () const
StringRef getBitEnumSeparator () const
BitEnumSeparatorKind getBitEnumSeparatorKind () const
StringRef getBitEnumSeparatorParser () const
const llvm::Record & getDef () const

Protected Attributes

const llvm::Record * def

Detailed Description

Definition at line 54 of file EnumInfo.h.

Member Enumeration Documentation

◆ BitEnumSeparatorKind

Enumerator
VerticalBar 
Comma 
Space 

Definition at line 142 of file EnumInfo.h.

Constructor & Destructor Documentation

◆ EnumInfo() [1/3]

mlir::tblgen::EnumInfo::EnumInfo ( const llvm::Record * record)
explicit

◆ EnumInfo() [2/3]

mlir::tblgen::EnumInfo::EnumInfo ( const llvm::Record & record)
explicit

◆ EnumInfo() [3/3]

mlir::tblgen::EnumInfo::EnumInfo ( const llvm::DefInit * init)
explicit

Member Function Documentation

◆ asEnumAttr()

std::optional< Attribute > EnumInfo::asEnumAttr ( ) const

Definition at line 53 of file EnumInfo.cpp.

References def, and isEnumAttr().

Referenced by hasParserPrinter().

◆ genSpecializedAttr()

bool EnumInfo::genSpecializedAttr ( ) const

Definition at line 130 of file EnumInfo.cpp.

References def, and isSubClassOf().

◆ getAllCases()

std::vector< EnumCase > EnumInfo::getAllCases ( ) const

Definition at line 117 of file EnumInfo.cpp.

References def.

◆ getBaseAttrClass()

const Record * EnumInfo::getBaseAttrClass ( ) const

Definition at line 135 of file EnumInfo.cpp.

References def.

◆ getBitEnumSeparator()

StringRef EnumInfo::getBitEnumSeparator ( ) const

Definition at line 151 of file EnumInfo.cpp.

References def.

Referenced by getBitEnumSeparatorKind().

◆ getBitEnumSeparatorKind()

EnumInfo::BitEnumSeparatorKind EnumInfo::getBitEnumSeparatorKind ( ) const

Definition at line 155 of file EnumInfo.cpp.

References Comma, def, getBitEnumSeparator(), Space, and VerticalBar.

Referenced by getBitEnumSeparatorParser().

◆ getBitEnumSeparatorParser()

StringRef EnumInfo::getBitEnumSeparatorParser ( ) const

Definition at line 167 of file EnumInfo.cpp.

References Comma, def, getBitEnumSeparatorKind(), Space, and VerticalBar.

◆ getBitwidth()

int64_t EnumInfo::getBitwidth ( ) const

Definition at line 91 of file EnumInfo.cpp.

References def.

◆ getCppNamespace()

StringRef EnumInfo::getCppNamespace ( ) const

Definition at line 83 of file EnumInfo.cpp.

References def.

Referenced by getQualifiedName().

◆ getDef()

const Record & EnumInfo::getDef ( ) const

Definition at line 182 of file EnumInfo.cpp.

References def.

◆ getDescription()

StringRef EnumInfo::getDescription ( ) const

Definition at line 79 of file EnumInfo.cpp.

References def.

◆ getEnumClassName()

StringRef EnumInfo::getEnumClassName ( ) const

Definition at line 71 of file EnumInfo.cpp.

References def.

Referenced by getQualifiedName().

◆ getMaxEnumValFnName()

StringRef EnumInfo::getMaxEnumValFnName ( ) const

Definition at line 113 of file EnumInfo.cpp.

References def.

◆ getQualifiedName()

std::string EnumInfo::getQualifiedName ( ) const

Definition at line 87 of file EnumInfo.cpp.

References getCppNamespace(), and getEnumClassName().

◆ getSpecializedAttrClassName()

StringRef EnumInfo::getSpecializedAttrClassName ( ) const

Definition at line 139 of file EnumInfo.cpp.

References def.

◆ getStringToSymbolFnName()

StringRef EnumInfo::getStringToSymbolFnName ( ) const

Definition at line 101 of file EnumInfo.cpp.

References def.

◆ getSummary()

StringRef EnumInfo::getSummary ( ) const

Definition at line 75 of file EnumInfo.cpp.

References def.

◆ getSymbolToStringFnName()

StringRef EnumInfo::getSymbolToStringFnName ( ) const

Definition at line 105 of file EnumInfo.cpp.

References def.

◆ getSymbolToStringFnRetType()

StringRef EnumInfo::getSymbolToStringFnRetType ( ) const

Definition at line 109 of file EnumInfo.cpp.

References def.

◆ getUnderlyingToSymbolFnName()

StringRef EnumInfo::getUnderlyingToSymbolFnName ( ) const

Definition at line 97 of file EnumInfo.cpp.

References def.

◆ getUnderlyingType()

StringRef EnumInfo::getUnderlyingType ( ) const

Definition at line 93 of file EnumInfo.cpp.

References def.

Referenced by hasParserPrinter().

◆ hasParserPrinter()

bool EnumInfo::hasParserPrinter ( ) const

Definition at line 65 of file EnumInfo.cpp.

References asEnumAttr(), and getUnderlyingType().

◆ isBitEnum()

bool EnumInfo::isBitEnum ( ) const

Definition at line 59 of file EnumInfo.cpp.

References isSubClassOf().

Referenced by isNewStyleBitEnum().

◆ isEnumAttr()

bool EnumInfo::isEnumAttr ( ) const

Definition at line 51 of file EnumInfo.cpp.

References isSubClassOf().

Referenced by asEnumAttr().

◆ isNewStyleBitEnum()

bool EnumInfo::isNewStyleBitEnum ( ) const

Definition at line 61 of file EnumInfo.cpp.

References isBitEnum(), and printBitEnumQuoted().

◆ isSubClassOf()

bool EnumInfo::isSubClassOf ( StringRef className) const

Definition at line 47 of file EnumInfo.cpp.

References def.

Referenced by genSpecializedAttr(), isBitEnum(), and isEnumAttr().

◆ printBitEnumPrimaryGroups()

bool EnumInfo::printBitEnumPrimaryGroups ( ) const

Definition at line 143 of file EnumInfo.cpp.

References def.

◆ printBitEnumQuoted()

bool EnumInfo::printBitEnumQuoted ( ) const

Definition at line 147 of file EnumInfo.cpp.

References def.

Referenced by isNewStyleBitEnum().

Member Data Documentation

◆ def


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