Lines Matching refs:Token
40 void TokenLexer::Init(Token &Tok, SourceLocation ELEnd, MacroInfo *MI, in Init()
96 void TokenLexer::Init(const Token *TokArray, unsigned NumToks, in Init()
140 SmallVectorImpl<Token> &ResultToks, bool HasPasteOperator, MacroInfo *Macro, in MaybeRemoveCommaBeforeVaArgs()
181 ResultToks.back().setFlag(Token::CommaAfterElided); in MaybeRemoveCommaBeforeVaArgs()
190 SmallVectorImpl<Token> &ResultToks, const VAOptExpansionContext &VCtx, in stringifyVAOPTContents()
194 Token *const VAOPTTokens = in stringifyVAOPTContents()
197 SmallVector<Token, 64> ConcatenatedVAOPTResultToks; in stringifyVAOPTContents()
207 Token &LHS = VAOPTTokens[CurTokenIdx - 1]; in stringifyVAOPTContents()
229 Token StringifiedVAOPT = MacroArgs::StringifyArgument( in stringifyVAOPTContents()
234 StringifiedVAOPT.setFlag(Token::LeadingSpace); in stringifyVAOPTContents()
236 StringifiedVAOPT.setFlag(Token::StringifiedInMacro); in stringifyVAOPTContents()
245 SmallVector<Token, 128> ResultToks; in ExpandFunctionArguments()
257 const Token &CurTok = Tokens[I]; in ExpandFunctionArguments()
389 const Token *UnexpArg = ActualArgs->getUnexpArgument(ArgNo); in ExpandFunctionArguments()
390 Token Res = MacroArgs::StringifyArgument( in ExpandFunctionArguments()
392 Res.setFlag(Token::StringifiedInMacro); in ExpandFunctionArguments()
397 Res.setFlag(Token::LeadingSpace); in ExpandFunctionArguments()
425 ResultToks.back().setFlag(Token::LeadingSpace); in ExpandFunctionArguments()
428 ResultToks.back().clearFlag(Token::LeadingSpace); in ExpandFunctionArguments()
451 const Token *ResultArgToks; in ExpandFunctionArguments()
455 const Token *ArgTok = ActualArgs->getUnexpArgument(ArgNo); in ExpandFunctionArguments()
473 ResultToks.back().setFlag(Token::IgnoredComma); in ExpandFunctionArguments()
477 for (Token &Tok : llvm::drop_begin(ResultToks, FirstResult)) in ExpandFunctionArguments()
490 ResultToks[FirstResult].setFlagValue(Token::LeadingSpace, in ExpandFunctionArguments()
492 ResultToks[FirstResult].setFlagValue(Token::StartOfLine, false); in ExpandFunctionArguments()
512 const Token *ArgToks = ActualArgs->getUnexpArgument(ArgNo); in ExpandFunctionArguments()
533 for (Token &Tok : llvm::make_range(ResultToks.end() - NumToks, in ExpandFunctionArguments()
549 ResultToks[ResultToks.size() - NumToks].setFlagValue(Token::StartOfLine, in ExpandFunctionArguments()
552 Token::LeadingSpace, NextTokGetsSpace); in ExpandFunctionArguments()
615 static bool isWideStringLiteralFromMacro(const Token &FirstTok, in isWideStringLiteralFromMacro()
616 const Token &SecondTok) { in isWideStringLiteralFromMacro()
623 bool TokenLexer::Lex(Token &Tok) { in Lex()
631 Tok.setFlagValue(Token::StartOfLine , AtStartOfLine); in Lex()
632 Tok.setFlagValue(Token::LeadingSpace, HasLeadingSpace || NextTokGetsSpace); in Lex()
634 Tok.setFlag(Token::LeadingEmptyMacro); in Lex()
647 Tok.setFlag(Token::IsReinjected); in Lex()
692 Tok.setFlagValue(Token::StartOfLine , AtStartOfLine); in Lex()
693 Tok.setFlagValue(Token::LeadingSpace, HasLeadingSpace); in Lex()
697 if (AtStartOfLine) Tok.setFlag(Token::StartOfLine); in Lex()
698 if (HasLeadingSpace) Tok.setFlag(Token::LeadingSpace); in Lex()
725 bool TokenLexer::pasteTokens(Token &Tok) { in pasteTokens()
733 bool TokenLexer::pasteTokens(Token &LHSTok, ArrayRef<Token> TokenStream, in pasteTokens()
747 LHSTok.clearFlag(Token::LeadingSpace); in pasteTokens()
766 const Token &RHS = TokenStream[CurIdx]; in pasteTokens()
794 Token ResultTokTmp; in pasteTokens()
805 Token Result; in pasteTokens()
885 Result.setFlagValue(Token::StartOfLine , LHSTok.isAtStartOfLine()); in pasteTokens()
886 Result.setFlagValue(Token::LeadingSpace, LHSTok.hasLeadingSpace()); in pasteTokens()
946 void TokenLexer::HandleMicrosoftCommentPaste(Token &Tok, SourceLocation OpLoc) { in HandleMicrosoftCommentPaste()
990 Token *&begin_tokens, in updateConsecutiveMacroArgTokens()
991 Token * end_tokens) { in updateConsecutiveMacroArgTokens()
994 llvm::MutableArrayRef<Token> All(begin_tokens, end_tokens); in updateConsecutiveMacroArgTokens()
995 llvm::MutableArrayRef<Token> Partition; in updateConsecutiveMacroArgTokens()
1013 Partition = All.take_while([&](const Token &T) { in updateConsecutiveMacroArgTokens()
1022 Partition = All.take_while([&](const Token &T) { in updateConsecutiveMacroArgTokens()
1049 const Token &T) { in updateConsecutiveMacroArgTokens()
1056 for (Token& T : Partition) { in updateConsecutiveMacroArgTokens()
1070 Token *begin_tokens, in updateLocForMacroArgTokens()
1071 Token *end_tokens) { in updateLocForMacroArgTokens()
1080 Token &Tok = *begin_tokens; in updateLocForMacroArgTokens()
1091 void TokenLexer::PropagateLineStartLeadingSpaceInfo(Token &Result) { in PropagateLineStartLeadingSpaceInfo()