clang API Documentation
#include <LiteralSupport.h>
Public Member Functions | |
CharLiteralParser (const char *begin, const char *end, SourceLocation Loc, Preprocessor &PP, tok::TokenKind kind) | |
bool | hadError () const |
bool | isAscii () const |
bool | isWide () const |
bool | isUTF16 () const |
bool | isUTF32 () const |
bool | isMultiChar () const |
uint64_t | getValue () const |
StringRef | getUDSuffix () const |
unsigned | getUDSuffixOffset () const |
CharLiteralParser - Perform interpretation and semantic analysis of a character literal.
Definition at line 154 of file LiteralSupport.h.
CharLiteralParser::CharLiteralParser | ( | const char * | begin, |
const char * | end, | ||
SourceLocation | Loc, | ||
Preprocessor & | PP, | ||
tok::TokenKind | kind | ||
) |
user-defined-character-literal: [C++11 lex.ext] character-literal ud-suffix ud-suffix: identifier character-literal: [C++11 lex.ccon] ' c-char-sequence ' u' c-char-sequence ' U' c-char-sequence ' L' c-char-sequence ' c-char-sequence: c-char c-char-sequence c-char c-char: any member of the source character set except the single-quote ', backslash \, or new-line character escape-sequence universal-character-name escape-sequence: simple-escape-sequence octal-escape-sequence hexadecimal-escape-sequence simple-escape-sequence: one of \' \" \? \\ \a \b \f \n \r \t \v octal-escape-sequence: \ octal-digit \ octal-digit octal-digit \ octal-digit octal-digit octal-digit hexadecimal-escape-sequence: \x hexadecimal-digit hexadecimal-escape-sequence hexadecimal-digit universal-character-name: [C++11 lex.charset] \u hex-quad \U hex-quad hex-quad hex-quad: hex-digit hex-digit hex-digit hex-digit
Definition at line 1024 of file LiteralSupport.cpp.
References clang::Preprocessor::Diag(), clang::expandUCNs(), getCharWidth(), clang::TargetInfo::getCharWidth(), clang::Preprocessor::getDiagnostics(), clang::TargetInfo::getIntWidth(), clang::Preprocessor::getLangOpts(), clang::Preprocessor::getSourceManager(), clang::Preprocessor::getTargetInfo(), clang::TargetInfo::getWCharWidth(), isAscii(), isMultiChar(), isWide(), ProcessCharEscape(), and ProcessUCNEscape().
StringRef clang::CharLiteralParser::getUDSuffix | ( | ) | const [inline] |
Definition at line 173 of file LiteralSupport.h.
unsigned clang::CharLiteralParser::getUDSuffixOffset | ( | ) | const [inline] |
Definition at line 174 of file LiteralSupport.h.
uint64_t clang::CharLiteralParser::getValue | ( | ) | const [inline] |
Definition at line 172 of file LiteralSupport.h.
bool clang::CharLiteralParser::hadError | ( | ) | const [inline] |
Definition at line 166 of file LiteralSupport.h.
bool clang::CharLiteralParser::isAscii | ( | ) | const [inline] |
Definition at line 167 of file LiteralSupport.h.
Referenced by CharLiteralParser().
bool clang::CharLiteralParser::isMultiChar | ( | ) | const [inline] |
Definition at line 171 of file LiteralSupport.h.
Referenced by CharLiteralParser().
bool clang::CharLiteralParser::isUTF16 | ( | ) | const [inline] |
Definition at line 169 of file LiteralSupport.h.
bool clang::CharLiteralParser::isUTF32 | ( | ) | const [inline] |
Definition at line 170 of file LiteralSupport.h.
bool clang::CharLiteralParser::isWide | ( | ) | const [inline] |
Definition at line 168 of file LiteralSupport.h.
Referenced by CharLiteralParser().