LLVM 19.0.0git
Public Types | Public Member Functions | Public Attributes | List of all members
AbstractManglingParser< Derived, Alloc >::OperatorInfo Struct Reference

#include "llvm/Demangle/ItaniumDemangle.h"

Public Types

enum  OIKind : unsigned char {
  Prefix , Postfix , Binary , Array ,
  Member , New , Del , Call ,
  CCast , Conditional , NameOnly , NamedCast ,
  OfIdOp , Unnameable = NamedCast
}
 

Public Member Functions

constexpr OperatorInfo (const char(&E)[3], OIKind K, bool F, Node::Prec P, const char *N)
 
bool operator< (const OperatorInfo &Other) const
 
bool operator< (const char *Peek) const
 
bool operator== (const char *Peek) const
 
bool operator!= (const char *Peek) const
 
std::string_view getSymbol () const
 
std::string_view getName () const
 
OIKind getKind () const
 
bool getFlag () const
 
Node::Prec getPrecedence () const
 

Public Attributes

char Enc [2]
 
OIKind Kind
 
bool Flag: 1
 
Node::Prec Prec: 7
 
const charName
 

Detailed Description

template<typename Derived, typename Alloc>
struct AbstractManglingParser< Derived, Alloc >::OperatorInfo

Definition at line 2841 of file ItaniumDemangle.h.

Member Enumeration Documentation

◆ OIKind

template<typename Derived , typename Alloc >
enum AbstractManglingParser::OperatorInfo::OIKind : unsigned char
Enumerator
Prefix 
Postfix 
Binary 
Array 
Member 
New 
Del 
Call 
CCast 
Conditional 
NameOnly 
NamedCast 
OfIdOp 
Unnameable 

Definition at line 2842 of file ItaniumDemangle.h.

Constructor & Destructor Documentation

◆ OperatorInfo()

template<typename Derived , typename Alloc >
constexpr AbstractManglingParser< Derived, Alloc >::OperatorInfo::OperatorInfo ( const char(&)  E[3],
OIKind  K,
bool  F,
Node::Prec  P,
const char N 
)
inlineconstexpr

Definition at line 2867 of file ItaniumDemangle.h.

Member Function Documentation

◆ getFlag()

template<typename Derived , typename Alloc >
bool AbstractManglingParser< Derived, Alloc >::OperatorInfo::getFlag ( ) const
inline

◆ getKind()

template<typename Derived , typename Alloc >
OIKind AbstractManglingParser< Derived, Alloc >::OperatorInfo::getKind ( ) const
inline

◆ getName()

template<typename Derived , typename Alloc >
std::string_view AbstractManglingParser< Derived, Alloc >::OperatorInfo::getName ( ) const
inline

◆ getPrecedence()

template<typename Derived , typename Alloc >
Node::Prec AbstractManglingParser< Derived, Alloc >::OperatorInfo::getPrecedence ( ) const
inline

◆ getSymbol()

template<typename Derived , typename Alloc >
std::string_view AbstractManglingParser< Derived, Alloc >::OperatorInfo::getSymbol ( ) const
inline

◆ operator!=()

template<typename Derived , typename Alloc >
bool AbstractManglingParser< Derived, Alloc >::OperatorInfo::operator!= ( const char Peek) const
inline

◆ operator<() [1/2]

template<typename Derived , typename Alloc >
bool AbstractManglingParser< Derived, Alloc >::OperatorInfo::operator< ( const char Peek) const
inline

◆ operator<() [2/2]

template<typename Derived , typename Alloc >
bool AbstractManglingParser< Derived, Alloc >::OperatorInfo::operator< ( const OperatorInfo Other) const
inline

Definition at line 2872 of file ItaniumDemangle.h.

References Other.

◆ operator==()

template<typename Derived , typename Alloc >
bool AbstractManglingParser< Derived, Alloc >::OperatorInfo::operator== ( const char Peek) const
inline

Member Data Documentation

◆ Enc

template<typename Derived , typename Alloc >
char AbstractManglingParser< Derived, Alloc >::OperatorInfo::Enc[2]

◆ Flag

template<typename Derived , typename Alloc >
bool AbstractManglingParser< Derived, Alloc >::OperatorInfo::Flag

◆ Kind

template<typename Derived , typename Alloc >
OIKind AbstractManglingParser< Derived, Alloc >::OperatorInfo::Kind

◆ Name

template<typename Derived , typename Alloc >
const char* AbstractManglingParser< Derived, Alloc >::OperatorInfo::Name

◆ Prec

template<typename Derived , typename Alloc >
Node::Prec AbstractManglingParser< Derived, Alloc >::OperatorInfo::Prec

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