|
using System.Collections.Generic;
using System.Text.RegularExpressions;
using System;
namespace FastColoredTextBoxNS
{
public class SyntaxDescriptor: IDisposable
{
public char leftBracket = '(';
public char rightBracket = ')';
public char leftBracket2 = '\x0';
public char rightBracket2 = '\x0';
public readonly List<Style> styles = new List<Style>();
public readonly List<RuleDesc> rules = new List<RuleDesc>();
public readonly List<FoldingDesc> foldings = new List<FoldingDesc>();
public void Dispose()
{
foreach (var style in styles)
style.Dispose();
}
}
public class RuleDesc
{
Regex regex;
public string pattern;
public RegexOptions options = RegexOptions.None;
public Style style;
public Regex Regex
{
get
{
if (regex == null)
{
regex = new Regex(pattern, RegexOptions.Compiled | options);
}
return regex;
}
}
}
public class FoldingDesc
{
public string startMarkerRegex;
public string finishMarkerRegex;
public RegexOptions options = RegexOptions.None;
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
I am Pavеl Tоrgаshоv, and I live in Kyiv, Ukraine.
I've been developing software since 1998.
Main activities: processing of large volumes of data, statistics, computer vision and graphics.