AngleSharp by Florian Rappl

<PackageReference Include="AngleSharp" Version="0.3.7" />

 SourceManager

sealed class SourceManager
Represents the source code manager.
public int Column { get; }

Gets the current column within the source code.

public char Current { get; }

Gets the current character.

public Encoding Encoding { get; set; }

Gets or sets the encoding to use.

public int InsertionPoint { get; set; }

Gets or sets the insertion point.

public bool IsBeginning { get; }

Gets if the position is at the moment at the beginning.

public bool IsEnded { get; }

Gets the status of reading the source code, are we beyond the stream?

public bool IsEnding { get; }

Gets the status of reading the source code, is the EOF currently given?

public int Line { get; }

Gets the current line within the source code.

public char Next { get; }

Gets the next character (by advancing and returning the current character).

public char Previous { get; }

Gets the previous character (by rewinding and returning the current character).

public SourceManager(string source)

Constructs a new instance of the source code manager.

public SourceManager(Stream stream)

Constructs a new instance of the source code manager.

public void Advance()

Advances one character in the source code.

public void Advance(int n)

Advances n characters in the source code.

public void Back()

Moves back one character in the source code.

public void Back(int n)

Moves back n characters in the source code.

public bool ContinuesWith(string s, bool ignoreCase = true)

Looks if the current character / next characters match a certain string.

public void ResetInsertionPoint()

Resets the insertion point to the end of the buffer.