Lines Matching refs:StringRef
34 bool FileCheckPattern::ParsePattern(StringRef PatternStr, StringRef Prefix, in ParsePattern()
70 (PatternStr.size() < 2 || (PatternStr.find("{{") == StringRef::npos && in ParsePattern()
71 PatternStr.find("[[") == StringRef::npos))) { in ParsePattern()
93 if (End == StringRef::npos) { in ParsePattern()
125 if (End == StringRef::npos) { in ParsePattern()
132 StringRef MatchStr = PatternStr.substr(2, End); in ParsePattern()
137 StringRef Name = MatchStr.substr(0, NameEnd); in ParsePattern()
154 if (NameEnd != StringRef::npos) { in ParsePattern()
180 if (NameEnd == StringRef::npos) { in ParsePattern()
226 bool FileCheckPattern::AddRegExToRegEx(StringRef RS, unsigned &CurParen, SourceMgr &SM) { in AddRegExToRegEx()
249 bool FileCheckPattern::EvaluateExpression(StringRef Expr, std::string &Value) const { in EvaluateExpression()
253 Expr = Expr.substr(StringRef("@LINE").size()); in EvaluateExpression()
275 size_t FileCheckPattern::Match(StringRef Buffer, size_t &MatchLen, in Match()
276 StringMap<StringRef> &VariableTable) const { in Match()
293 StringRef RegExToMatch = RegExStr; in Match()
304 return StringRef::npos; in Match()
306 StringMap<StringRef>::iterator it = in Match()
310 return StringRef::npos; in Match()
326 SmallVector<StringRef, 4> MatchInfo; in Match()
328 return StringRef::npos; in Match()
332 StringRef FullMatch = MatchInfo[0]; in Match()
353 FileCheckPattern::ComputeMatchDistance(StringRef Buffer, in ComputeMatchDistance()
354 const StringMap<StringRef> &VariableTable) const { in ComputeMatchDistance()
361 StringRef ExampleString(FixedStr); in ComputeMatchDistance()
366 StringRef BufferPrefix = Buffer.substr(0, ExampleString.size()); in ComputeMatchDistance()
371 void FileCheckPattern::PrintVariableUses(const SourceMgr &SM, StringRef Buffer, in PrintVariableUses()
372 const StringMap<StringRef> &VariableTable, in PrintVariableUses()
380 StringRef Var = VariableUse.first; in PrintVariableUses()
392 StringMap<StringRef>::const_iterator it = VariableTable.find(Var); in PrintVariableUses()
418 StringRef Buffer, size_t Pos, size_t Len, in ProcessMatchResult()
434 const SourceMgr &SM, StringRef Buffer, in PrintFuzzyMatch()
435 const StringMap<StringRef> &VariableTable, in PrintFuzzyMatch()
442 size_t Best = StringRef::npos; in PrintFuzzyMatch()
460 if (Quality < BestQuality || Best == StringRef::npos) { in PrintFuzzyMatch()
469 if (Best && Best != StringRef::npos && BestQuality < 50) { in PrintFuzzyMatch()
486 size_t FileCheckPattern::FindRegexVarEnd(StringRef Str, SourceMgr &SM) { in FindRegexVarEnd()
521 return StringRef::npos; in FindRegexVarEnd()
526 StringRef
553 return StringRef(OutputBuffer.data(), OutputBuffer.size() - 1); in CanonicalizeFile()
585 std::string Check::FileCheckType::getDescription(StringRef Prefix) const { in getDescription()
615 static std::pair<Check::FileCheckType, StringRef>
616 FindCheckType(StringRef Buffer, StringRef Prefix) { in FindCheckType()
618 return {Check::CheckNone, StringRef()}; in FindCheckType()
622 StringRef Rest = Buffer.drop_front(Prefix.size() + 1); in FindCheckType()
628 return {Check::CheckNone, StringRef()}; in FindCheckType()
671 static size_t SkipWord(StringRef Str, size_t Loc) { in SkipWord()
700 static std::pair<StringRef, StringRef>
701 FindFirstMatchingPrefix(Regex &PrefixRE, StringRef &Buffer, in FindFirstMatchingPrefix()
703 SmallVector<StringRef, 2> Matches; in FindFirstMatchingPrefix()
709 return {StringRef(), StringRef()}; in FindFirstMatchingPrefix()
711 StringRef Prefix = Matches[0]; in FindFirstMatchingPrefix()
718 StringRef Skipped = Buffer.substr(0, Loc); in FindFirstMatchingPrefix()
729 StringRef AfterSuffix; in FindFirstMatchingPrefix()
744 return {StringRef(), StringRef()}; in FindFirstMatchingPrefix()
751 bool llvm::FileCheck::ReadCheckFile(SourceMgr &SM, StringRef Buffer, in ReadCheckFile()
763 StringRef PatternInBuffer = in ReadCheckFile()
782 StringRef UsedPrefix; in ReadCheckFile()
783 StringRef AfterSuffix; in ReadCheckFile()
849 StringRef Type = CheckTy == Check::CheckNext in ReadCheckFile()
899 StringRef Prefix, SMLoc Loc, const FileCheckPattern &Pat, in PrintMatch()
900 int MatchedCount, StringRef Buffer, in PrintMatch()
901 StringMap<StringRef> &VariableTable, size_t MatchPos, in PrintMatch()
930 StringRef Buffer, StringMap<StringRef> &VariableTable, in PrintMatch()
939 StringRef Prefix, SMLoc Loc, in PrintNoMatch()
941 StringRef Buffer, StringMap<StringRef> &VariableTable, in PrintNoMatch()
976 StringRef Buffer, StringMap<StringRef> &VariableTable, in PrintNoMatch()
984 static unsigned CountNumNewlinesBetween(StringRef Range, in CountNumNewlinesBetween()
1007 size_t FileCheckString::Check(const SourceMgr &SM, StringRef Buffer, in Check()
1009 StringMap<StringRef> &VariableTable, in Check()
1022 if (LastPos == StringRef::npos) in Check()
1023 return StringRef::npos; in Check()
1033 StringRef MatchBuffer = Buffer.substr(LastMatchEnd); in Check()
1041 if (MatchPos == StringRef::npos) { in Check()
1044 return StringRef::npos; in Check()
1059 StringRef MatchBuffer = Buffer.substr(LastPos); in Check()
1060 StringRef SkippedRegion = Buffer.substr(LastPos, MatchPos); in Check()
1068 return StringRef::npos; in Check()
1077 return StringRef::npos; in Check()
1083 return StringRef::npos; in Check()
1090 bool FileCheckString::CheckNext(const SourceMgr &SM, StringRef Buffer) const { in CheckNext()
1136 bool FileCheckString::CheckSame(const SourceMgr &SM, StringRef Buffer) const { in CheckSame()
1166 const SourceMgr &SM, StringRef Buffer, in CheckNot()
1168 StringMap<StringRef> &VariableTable, const FileCheckRequest &Req, in CheckNot()
1176 if (Pos == StringRef::npos) { in CheckNot()
1193 FileCheckString::CheckDag(const SourceMgr &SM, StringRef Buffer, in CheckDag()
1195 StringMap<StringRef> &VariableTable, in CheckDag()
1235 StringRef MatchBuffer = Buffer.substr(MatchPos); in CheckDag()
1239 if (MatchPosBuf == StringRef::npos) { in CheckDag()
1242 return StringRef::npos; in CheckDag()
1301 StringRef SkippedRegion = in CheckDag()
1304 return StringRef::npos; in CheckDag()
1320 static bool ValidateCheckPrefix(StringRef CheckPrefix) { in ValidateCheckPrefix()
1328 for (StringRef Prefix : Req.CheckPrefixes) { in ValidateCheckPrefixes()
1357 for (StringRef Prefix : Req.CheckPrefixes) { in buildCheckPrefixRegex()
1369 static void ClearLocalVars(StringMap<StringRef> &VariableTable) { in ClearLocalVars()
1370 SmallVector<StringRef, 16> LocalVars; in ClearLocalVars()
1383 bool llvm::FileCheck::CheckInput(SourceMgr &SM, StringRef Buffer, in CheckInput()
1389 StringMap<StringRef> VariableTable; in CheckInput()
1392 VariableTable.insert(StringRef(Def).split('=')); in CheckInput()
1396 StringRef CheckRegion; in CheckInput()
1410 if (MatchLabelPos == StringRef::npos) in CheckInput()
1431 if (MatchPos == StringRef::npos) { in CheckInput()