internal NodeTree(string text, LexicalElement element) { this.element = element; Text = text.Substring(element.StartCursor.Location, element.EndCursor.Location - element.StartCursor.Location); }
private IClassificationType GetClassificationForLexicalElement(LexicalElement element) { string classificationType; if (LexicalNameToFormat.ContainsKey(element.Name)) classificationType = LexicalNameToFormat[element.Name]; else classificationType = "ConfigNode"; return classificationRegistry.GetClassificationType(classificationType); }
protected static bool IsError(LexicalElement element) => element.Name.Contains("_");
private static bool ElementInSpan(SnapshotSpan span, SnapshotSpan target, LexicalElement element) { var classificationSpan = new Span(span.Start.Position + element.StartCursor.Location, element.EndCursor.Location - element.StartCursor.Location); return classificationSpan.IntersectsWith(target); }