#include "FormatTokenLexer.h"
#include "FormatToken.h"
#include "clang/Basic/SourceLocation.h"
#include "clang/Basic/SourceManager.h"
#include "clang/Format/Format.h"
#include "llvm/Support/Regex.h"
namespace clang {
namespace format {
FormatTokenLexer::FormatTokenLexer(
const SourceManager &SourceMgr, FileID ID, unsigned Column,
const FormatStyle &Style, encoding::Encoding Encoding,
llvm::SpecificBumpPtrAllocator<FormatToken> &Allocator,
IdentifierTable &IdentTable)
: … { … }
ArrayRef<FormatToken *> FormatTokenLexer::lex() { … }
void FormatTokenLexer::tryMergePreviousTokens() { … }
bool FormatTokenLexer::tryMergeNSStringLiteral() { … }
bool FormatTokenLexer::tryMergeJSPrivateIdentifier() { … }
bool FormatTokenLexer::tryMergeCSharpStringLiteral() { … }
const llvm::StringSet<> FormatTokenLexer::CSharpAttributeTargets = …;
bool FormatTokenLexer::tryMergeNullishCoalescingEqual() { … }
bool FormatTokenLexer::tryMergeCSharpKeywordVariables() { … }
bool FormatTokenLexer::tryTransformCSharpForEach() { … }
bool FormatTokenLexer::tryMergeForEach() { … }
bool FormatTokenLexer::tryTransformTryUsageForC() { … }
bool FormatTokenLexer::tryMergeLessLess() { … }
bool FormatTokenLexer::tryMergeGreaterGreater() { … }
bool FormatTokenLexer::tryMergeTokens(ArrayRef<tok::TokenKind> Kinds,
TokenType NewType) { … }
bool FormatTokenLexer::tryMergeTokens(size_t Count, TokenType NewType) { … }
bool FormatTokenLexer::tryMergeTokensAny(
ArrayRef<ArrayRef<tok::TokenKind>> Kinds, TokenType NewType) { … }
bool FormatTokenLexer::precedesOperand(FormatToken *Tok) { … }
bool FormatTokenLexer::canPrecedeRegexLiteral(FormatToken *Prev) { … }
void FormatTokenLexer::tryParseJSRegexLiteral() { … }
static auto lexCSharpString(const char *Begin, const char *End, bool Verbatim,
bool Interpolated) { … }
void FormatTokenLexer::handleCSharpVerbatimAndInterpolatedStrings() { … }
void FormatTokenLexer::handleTableGenMultilineString() { … }
void FormatTokenLexer::handleTableGenNumericLikeIdentifier() { … }
void FormatTokenLexer::handleTemplateStrings() { … }
void FormatTokenLexer::tryParsePythonComment() { … }
bool FormatTokenLexer::tryMerge_TMacro() { … }
bool FormatTokenLexer::tryMergeConflictMarkers() { … }
FormatToken *FormatTokenLexer::getStashedToken() { … }
void FormatTokenLexer::truncateToken(size_t NewLen) { … }
static size_t countLeadingWhitespace(StringRef Text) { … }
FormatToken *FormatTokenLexer::getNextToken() { … }
bool FormatTokenLexer::readRawTokenVerilogSpecific(Token &Tok) { … }
void FormatTokenLexer::readRawToken(FormatToken &Tok) { … }
void FormatTokenLexer::resetLexer(unsigned Offset) { … }
}
}