public ErrorMatch Match(ReadOnlyLineBuffer Input) { Match Match; if (Input.TryMatch(@"^(\s*)([a-zA-Z_][a-zA-Z0-9_]*):\s*(Error|Warning|Display): ", out Match)) { int MaxOffset = Input.MatchForwards(0, String.Format(@"^({0} | *$)", Match.Groups[1].Value)); ErrorSeverity Severity; switch (Match.Groups[3].Value) { case "Error": Severity = ErrorSeverity.Error; break; case "Warning": Severity = ErrorSeverity.Warning; break; default: Severity = ErrorSeverity.Silent; break; } ErrorMatch Error = new ErrorMatch(Severity, ErrorPriority.Low, "Log", Input, 0, MaxOffset); Error.Properties["Channel"] = Match.Groups[2].Value; return(Error); } return(null); }
public ErrorMatch Match(ReadOnlyLineBuffer Input) { Match Match; if (Input.TryMatch(@"^(\s*)WARNING: ThreadSanitizer:", out Match)) { int EndIdx = Input.MatchForwards(0, String.Format(@"^([ ]*|{0} .*|{0}SUMMARY:.*)\$", Match.Groups[1].Value)); return(new ErrorMatch(ErrorSeverity.Warning, ErrorPriority.Normal, "ThreadSanitizer", Input, 0, EndIdx)); } return(null); }