public static IEnumerable <TextElementBase> EnumerateLineMatches(this TextElementBase sourceLine, IEnumerable <DataEntry> simularEntries) { var language = sourceLine.Language; var sourceString = sourceLine.ToString(); foreach (var entry in simularEntries) { foreach (var line in entry.EnumerateLines()) { if (line is TextLink) { continue; } if (line.Language != language) { continue; } if (!string.Equals(line.ToString(), sourceString, StringComparison.Ordinal)) { continue; } yield return(line); } } }
private static void EndTokenBlock(List <TokenBlockBase> linesInBlock) { if (!linesInBlock.Any()) { return; } var textTokenLine = linesInBlock.Last() as TextTokenBlock; if (textTokenLine == null) { return; } TextElementBase textElementBase = textTokenLine.Inlines.LastOrDefault(); if (!(textElementBase is EOPElement) && !(textElementBase is EOLElement)) { if (!string.IsNullOrEmpty(textTokenLine.GetLastPart())) { textTokenLine.EndLine(); } else { textTokenLine.EndParagraph(); } } }