blob: 46cecd74006f27b5030e8c48b26b8478112383ca (
plain)
| ofs | hex dump | ascii |
|---|
| 0000 | 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 00 00 01 90 00 00 02 14 08 06 00 00 00 34 76 7a | .PNG........IHDR.............4vz |
| 0020 | 9f 00 00 00 01 73 52 47 42 00 ae ce 1c e9 00 00 00 04 67 41 4d 41 00 00 b1 8f 0b fc 61 05 00 00 | .....sRGB.........gAMA......a... |
| 0040 | 00 09 70 48 59 73 00 00 40 f3 00 00 40 f3 01 72 63 37 d4 00 00 00 58 74 45 58 74 43 6f 70 79 72 | ..pHYs..@...@..rc7....XtEXtCopyr |
| 0060 | 69 67 68 74 00 43 43 30 20 50 75 62 6c 69 63 20 44 6f 6d // Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System;
using Tango.Scripting.Editors.Document;
using Tango.Scripting.Editors.Utils;
namespace Tango.Scripting.Editors.Highlighting
{
/// <summary>
/// Represents a highlighted document.
/// </summary>
/// <remarks>This interface is used by the <see cref="HighlightingColorizer"/> to register the highlighter as a TextView service.</remarks>
public interface IHighlighter
{
/// <summary>
/// Gets the underlying text document.
/// </summary>
TextDocument Document { get; }
/// <summary>
/// Gets the span stack at the end of the specified line.
/// -> GetSpanStack(1) returns the spans at the start of the second line.
/// </summary>
/// <remarks>GetSpanStack(0) is valid and will always return the empty stack.</remarks>
ImmutableStack<HighlightingSpan> GetSpanStack(int lineNumber);
/// <summary>
/// Highlights the specified document line.
/// </summary>
/// <param name="lineNumber">The line to highlight.</param>
/// <returns>A <see cref="HighlightedLine"/> line object that represents the highlighted sections.</returns>
HighlightedLine HighlightLine(int lineNumber);
}
}
|