clang 23.0.0git
ConversionSpecifier Class Reference

#include "clang/AST/FormatString.h"

Inheritance diagram for ConversionSpecifier:
[legend]

Public Types

enum  Kind {
  InvalidSpecifier = 0 , cArg , dArg , DArg ,
  iArg , bArg , BArg , IntArgBeg = dArg ,
  IntArgEnd = BArg , oArg , OArg , uArg ,
  UArg , xArg , XArg , UIntArgBeg = oArg ,
  UIntArgEnd = XArg , fArg , FArg , eArg ,
  EArg , gArg , GArg , aArg ,
  AArg , DoubleArgBeg = fArg , DoubleArgEnd = AArg , sArg ,
  pArg , nArg , PercentArg , CArg ,
  SArg , PArg , ZArg , kArg ,
  KArg , rArg , RArg , FixedPointArgBeg = kArg ,
  FixedPointArgEnd = RArg , ObjCObjArg , ObjCBeg = ObjCObjArg , ObjCEnd = ObjCObjArg ,
  FreeBSDbArg , FreeBSDDArg , FreeBSDrArg , FreeBSDyArg ,
  PrintErrno , PrintfConvBeg = ObjCObjArg , PrintfConvEnd = PrintErrno , ScanListArg ,
  ScanfConvBeg = ScanListArg , ScanfConvEnd = ScanListArg
}

Public Member Functions

 ConversionSpecifier (bool isPrintf=true)
 ConversionSpecifier (bool isPrintf, const char *pos, Kind k)
const char * getStart () const
StringRef getCharacters () const
bool consumesDataArgument () const
Kind getKind () const
void setKind (Kind k)
unsigned getLength () const
void setEndScanList (const char *pos)
bool isIntArg () const
bool isUIntArg () const
bool isAnyIntArg () const
bool isDoubleArg () const
bool isFixedPointArg () const
const char * toString () const
bool isPrintfKind () const
std::optional< ConversionSpecifiergetStandardSpecifier () const

Protected Attributes

bool IsPrintf
const char * Position
const char * EndScanList
Kind kind

Detailed Description

Definition at line 137 of file FormatString.h.

Member Enumeration Documentation

◆ Kind

Enumerator
InvalidSpecifier 
cArg 
dArg 
DArg 
iArg 
bArg 
BArg 
IntArgBeg 
IntArgEnd 
oArg 
OArg 
uArg 
UArg 
xArg 
XArg 
UIntArgBeg 
UIntArgEnd 
fArg 
FArg 
eArg 
EArg 
gArg 
GArg 
aArg 
AArg 
DoubleArgBeg 
DoubleArgEnd 
sArg 
pArg 
nArg 
PercentArg 
CArg 
SArg 
PArg 
ZArg 
kArg 
KArg 
rArg 
RArg 
FixedPointArgBeg 
FixedPointArgEnd 
ObjCObjArg 
ObjCBeg 
ObjCEnd 
FreeBSDbArg 
FreeBSDDArg 
FreeBSDrArg 
FreeBSDyArg 
PrintErrno 
PrintfConvBeg 
PrintfConvEnd 
ScanListArg 
ScanfConvBeg 
ScanfConvEnd 

Definition at line 139 of file FormatString.h.

Constructor & Destructor Documentation

◆ ConversionSpecifier() [1/2]

clang::analyze_format_string::ConversionSpecifier::ConversionSpecifier ( bool isPrintf = true)
inline

Definition at line 220 of file FormatString.h.

◆ ConversionSpecifier() [2/2]

clang::analyze_format_string::ConversionSpecifier::ConversionSpecifier ( bool isPrintf,
const char * pos,
Kind k )
inline

Definition at line 224 of file FormatString.h.

Member Function Documentation

◆ consumesDataArgument()

bool clang::analyze_format_string::ConversionSpecifier::consumesDataArgument ( ) const
inline

Definition at line 231 of file FormatString.h.

◆ getCharacters()

StringRef clang::analyze_format_string::ConversionSpecifier::getCharacters ( ) const
inline

Definition at line 229 of file FormatString.h.

◆ getKind()

Kind clang::analyze_format_string::ConversionSpecifier::getKind ( ) const
inline

Definition at line 245 of file FormatString.h.

◆ getLength()

unsigned clang::analyze_format_string::ConversionSpecifier::getLength ( ) const
inline

Definition at line 247 of file FormatString.h.

◆ getStandardSpecifier()

std::optional< ConversionSpecifier > ConversionSpecifier::getStandardSpecifier ( ) const

Definition at line 1111 of file FormatString.cpp.

◆ getStart()

const char * clang::analyze_format_string::ConversionSpecifier::getStart ( ) const
inline

Definition at line 227 of file FormatString.h.

◆ isAnyIntArg()

bool clang::analyze_format_string::ConversionSpecifier::isAnyIntArg ( ) const
inline

Definition at line 257 of file FormatString.h.

◆ isDoubleArg()

bool clang::analyze_format_string::ConversionSpecifier::isDoubleArg ( ) const
inline

Definition at line 258 of file FormatString.h.

◆ isFixedPointArg()

bool clang::analyze_format_string::ConversionSpecifier::isFixedPointArg ( ) const
inline

Definition at line 261 of file FormatString.h.

◆ isIntArg()

bool clang::analyze_format_string::ConversionSpecifier::isIntArg ( ) const
inline

Definition at line 252 of file FormatString.h.

◆ isPrintfKind()

bool clang::analyze_format_string::ConversionSpecifier::isPrintfKind ( ) const
inline

Definition at line 267 of file FormatString.h.

◆ isUIntArg()

bool clang::analyze_format_string::ConversionSpecifier::isUIntArg ( ) const
inline

Definition at line 256 of file FormatString.h.

◆ setEndScanList()

void clang::analyze_format_string::ConversionSpecifier::setEndScanList ( const char * pos)
inline

Definition at line 250 of file FormatString.h.

◆ setKind()

void clang::analyze_format_string::ConversionSpecifier::setKind ( Kind k)
inline

Definition at line 246 of file FormatString.h.

◆ toString()

const char * ConversionSpecifier::toString ( ) const

Definition at line 1012 of file FormatString.cpp.

Member Data Documentation

◆ EndScanList

const char* clang::analyze_format_string::ConversionSpecifier::EndScanList
protected

Definition at line 274 of file FormatString.h.

◆ IsPrintf

bool clang::analyze_format_string::ConversionSpecifier::IsPrintf
protected

Definition at line 272 of file FormatString.h.

◆ kind

Kind clang::analyze_format_string::ConversionSpecifier::kind
protected

Definition at line 275 of file FormatString.h.

◆ Position

const char* clang::analyze_format_string::ConversionSpecifier::Position
protected

Definition at line 273 of file FormatString.h.


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