clang: lib/AST/FormatStringParsing.h Source File (original) (raw)

1

2

3

4

5

6

7

8

9

10

11

12

13

14#ifndef LLVM_CLANG_LIB_ANALYSIS_FORMATSTRINGPARSING_H

15#define LLVM_CLANG_LIB_ANALYSIS_FORMATSTRINGPARSING_H

16

20

22

24

25template

27 T &ValueToUpdate;

28 const T &ValueToCopy;

29public:

31 : ValueToUpdate(valueToUpdate), ValueToCopy(valueToCopy) {}

32

34 ValueToUpdate = ValueToCopy;

35 }

36};

37

38namespace analyze_format_string {

39

42 unsigned &argIndex);

43

45 const char *Start, const char *&Beg,

47

50 const char *Start, const char *&Beg, const char *E,

51 unsigned *argIndex);

52

55 const char *&Beg, const char *E);

56

59 const LangOptions &LO);

60

61

62

64 const LangOptions &LO, bool IsScanf = false);

65

66

67

68

70 const char *FmtStrEnd, unsigned &Len);

71

73 T FS;

74 const char *Start;

75 bool Stop;

76public:

80 const T &fs)

81 : FS(fs), Start(start), Stop(false) {}

82

83 const char *getStart() const { return Start; }

85 bool hasValue() const { return Start != nullptr; }

91};

92

93}

94}

95

96#endif

Defines the clang::ASTContext interface.

C Language Family Type Representation.

Keeps track of the various options that can be enabled, which controls the dialect of C or C++ that i...

UpdateOnReturn(T &valueToUpdate, const T &valueToCopy)

Definition FormatStringParsing.h:30

~UpdateOnReturn()

Definition FormatStringParsing.h:33

const T & getValue()

Definition FormatStringParsing.h:90

const T & getValue() const

Definition FormatStringParsing.h:86

SpecifierResult(const char *start, const T &fs)

Definition FormatStringParsing.h:79

bool shouldStop() const

Definition FormatStringParsing.h:84

SpecifierResult(bool stop=false)

Definition FormatStringParsing.h:77

bool hasValue() const

Definition FormatStringParsing.h:85

const char * getStart() const

Definition FormatStringParsing.h:83

bool ParseFieldWidth(FormatStringHandler &H, FormatSpecifier &CS, const char *Start, const char *&Beg, const char *E, unsigned *argIndex)

OptionalAmount ParsePositionAmount(FormatStringHandler &H, const char *Start, const char *&Beg, const char *E, PositionContext p)

OptionalAmount ParseAmount(const char *&Beg, const char *E)

OptionalAmount ParseNonPositionAmount(const char *&Beg, const char *E, unsigned &argIndex)

bool ParseLengthModifier(FormatSpecifier &FS, const char *&Beg, const char *E, const LangOptions &LO, bool IsScanf=false)

Returns true if a LengthModifier was parsed and installed in the FormatSpecifier& argument,...

bool ParseArgPosition(FormatStringHandler &H, FormatSpecifier &CS, const char *Start, const char *&Beg, const char *E)

bool ParseVectorModifier(FormatStringHandler &H, FormatSpecifier &FS, const char *&Beg, const char *E, const LangOptions &LO)

bool ParseUTF8InvalidSpecifier(const char *SpecifierBegin, const char *FmtStrEnd, unsigned &Len)

Returns true if the invalid specifier in SpecifierBegin is a UTF-8 string; check that it won't go fur...

The JSON file list parser is used to communicate input to InstallAPI.

nullptr

This class represents a compute construct, representing a 'Kind' of ‘parallel’, 'serial',...

const FunctionProtoType * T