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 135 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 \' " \? \
octal-escape-sequence: \ octal-digit \ octal-digit octal-digit \ octal-digit octal-digit octal-digit hexadecimal-escape-sequence: hexadecimal-digit hexadecimal-escape-sequence hexadecimal-digit universal-character-name: [C++11 lex.charset] hex-quad hex-quad hex-quad hex-quad: hex-digit hex-digit hex-digit hex-digit
Definition at line 795 of file LiteralSupport.cpp.
References conversionOK, ConvertUTF8toUTF32(), clang::Preprocessor::Diag(), 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(), ProcessUCNEscape(), and strictConversion.
| StringRef clang::CharLiteralParser::getUDSuffix | ( | ) | const [inline] |
Definition at line 154 of file LiteralSupport.h.
| unsigned clang::CharLiteralParser::getUDSuffixOffset | ( | ) | const [inline] |
Definition at line 155 of file LiteralSupport.h.
| uint64_t clang::CharLiteralParser::getValue | ( | ) | const [inline] |
Definition at line 153 of file LiteralSupport.h.
| bool clang::CharLiteralParser::hadError | ( | ) | const [inline] |
Definition at line 147 of file LiteralSupport.h.
| bool clang::CharLiteralParser::isAscii | ( | ) | const [inline] |
Definition at line 148 of file LiteralSupport.h.
Referenced by CharLiteralParser().
| bool clang::CharLiteralParser::isMultiChar | ( | ) | const [inline] |
Definition at line 152 of file LiteralSupport.h.
Referenced by CharLiteralParser().
| bool clang::CharLiteralParser::isUTF16 | ( | ) | const [inline] |
Definition at line 150 of file LiteralSupport.h.
| bool clang::CharLiteralParser::isUTF32 | ( | ) | const [inline] |
Definition at line 151 of file LiteralSupport.h.
| bool clang::CharLiteralParser::isWide | ( | ) | const [inline] |
Definition at line 149 of file LiteralSupport.h.
Referenced by CharLiteralParser().