clang
3.7.0
|
#include <FormatString.h>
Public Types | |
enum | Kind { InvalidSpecifier = 0, cArg, dArg, DArg, iArg, IntArgBeg = dArg, IntArgEnd = iArg, 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, ZArg, 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 |
bool | isIntArg () const |
bool | isUIntArg () const |
bool | isAnyIntArg () const |
const char * | toString () const |
bool | isPrintfKind () const |
Optional< ConversionSpecifier > | getStandardSpecifier () const |
Protected Attributes | |
bool | IsPrintf |
const char * | Position |
const char * | EndScanList |
Kind | kind |
Definition at line 121 of file FormatString.h.
Definition at line 123 of file FormatString.h.
|
inline |
Definition at line 181 of file FormatString.h.
|
inline |
Definition at line 185 of file FormatString.h.
|
inline |
Definition at line 196 of file FormatString.h.
References IsPrintf, kind, PercentArg, and PrintErrno.
Referenced by clang::analyze_printf::PrintfSpecifier::consumesDataArgument(), clang::analyze_scanf::ScanfSpecifier::consumesDataArgument(), clang::analyze_printf::PrintfSpecifier::getArgType(), clang::analyze_scanf::ScanfSpecifier::getArgType(), ParsePrintfSpecifier(), and ParseScanfSpecifier().
|
inline |
Definition at line 192 of file FormatString.h.
References getLength(), and getStart().
|
inline |
Definition at line 208 of file FormatString.h.
References kind.
Referenced by clang::analyze_printf::PrintfSpecifier::getArgType(), clang::analyze_scanf::ScanfSpecifier::getArgType(), clang::analyze_format_string::FormatSpecifier::getCorrectedLengthModifier(), getStandardSpecifier(), clang::analyze_format_string::FormatSpecifier::hasStandardConversionSpecifier(), clang::analyze_format_string::FormatSpecifier::hasStandardLengthConversionCombination(), clang::analyze_format_string::FormatSpecifier::hasValidLengthModifier(), and clang::analyze_format_string::ParseFormatStringHasSArg().
|
inline |
Definition at line 210 of file FormatString.h.
References EndScanList, and Position.
Referenced by getCharacters().
Optional< ConversionSpecifier > ConversionSpecifier::getStandardSpecifier | ( | ) | const |
|
inline |
|
inline |
Definition at line 217 of file FormatString.h.
References IntArgBeg, kind, and UIntArgEnd.
Referenced by clang::analyze_format_string::FormatSpecifier::getCorrectedLengthModifier().
|
inline |
Definition at line 214 of file FormatString.h.
References FreeBSDrArg, FreeBSDyArg, IntArgBeg, IntArgEnd, and kind.
Referenced by clang::analyze_printf::PrintfSpecifier::getArgType().
|
inline |
Definition at line 220 of file FormatString.h.
References IsPrintf.
Referenced by clang::analyze_printf::PrintfConversionSpecifier::classof(), and clang::analyze_scanf::ScanfConversionSpecifier::classof().
|
inline |
Definition at line 216 of file FormatString.h.
References kind, UIntArgBeg, and UIntArgEnd.
Referenced by clang::analyze_printf::PrintfSpecifier::getArgType().
|
inline |
Definition at line 209 of file FormatString.h.
References kind.
Referenced by getStandardSpecifier().
const char * ConversionSpecifier::toString | ( | ) | const |
Definition at line 529 of file FormatString.cpp.
References aArg, AArg, cArg, CArg, dArg, DArg, eArg, EArg, fArg, FArg, FreeBSDbArg, FreeBSDDArg, FreeBSDrArg, FreeBSDyArg, gArg, GArg, iArg, InvalidSpecifier, kind, nArg, oArg, OArg, ObjCObjArg, pArg, PercentArg, PrintErrno, sArg, SArg, ScanListArg, uArg, UArg, xArg, XArg, and ZArg.
|
protected |
Definition at line 227 of file FormatString.h.
Referenced by getLength(), and clang::analyze_scanf::ScanfConversionSpecifier::setEndScanList().
|
protected |
Definition at line 225 of file FormatString.h.
Referenced by consumesDataArgument(), and isPrintfKind().
|
protected |
Definition at line 228 of file FormatString.h.
Referenced by consumesDataArgument(), getKind(), isAnyIntArg(), clang::analyze_printf::PrintfConversionSpecifier::isDoubleArg(), isIntArg(), clang::analyze_printf::PrintfConversionSpecifier::isObjCArg(), isUIntArg(), setKind(), and toString().
|
protected |
Definition at line 226 of file FormatString.h.
Referenced by getLength(), and getStart().