* parser.cs: Allow creating a regular expression using {,n} as the
[mono.git] / mcs / class / System / System.Text.RegularExpressions / RegexRunner.cs
1 //\r
2 // assembly:    System\r
3 // namespace:   System.Text.RegularExpressions\r
4 // file:        RegexRunner.cs\r
5 //\r
6 // author:      Dan Lewis (dihlewis@yahoo.co.uk)\r
7 //              (c) 2002\r
8 \r
9 using System;
10 using System.ComponentModel;
11
12 namespace System.Text.RegularExpressions {\r
13         /* I'm just guessing that this is the correct place for this
14          * attribute, and that the option is correct.  It shuts up
15          * CorCompare for this undocumented class.
16          */
17         [EditorBrowsable (EditorBrowsableState.Never)]
18         public abstract class RegexRunner {\r
19                 // constructor\r
20         \r
21                 protected internal RegexRunner () {\r
22                         throw new NotImplementedException ("RegexRunner is not supported by Mono.");\r
23                 }\r
24 \r
25                 // protected abstract\r
26 \r
27                 protected abstract bool FindFirstChar ();\r
28 \r
29                 protected abstract void Go ();\r
30 \r
31                 protected abstract void InitTrackCount ();\r
32 \r
33                 // protected methods\r
34 \r
35                 protected void Capture (int capnum, int start, int end) {\r
36                 }\r
37 \r
38                 protected static bool CharInSet (char ch, string set, string category) {\r
39                         return false;\r
40                 }\r
41 \r
42                 protected void Crawl (int i) {\r
43                 }\r
44 \r
45                 protected int CrawlPos () {\r
46                         return 0;\r
47                 }\r
48 \r
49                 protected void DoubleCrawl () {\r
50                 }\r
51 \r
52                 protected void DoubleStack () {\r
53                 }\r
54 \r
55                 protected void DoubleTrack () {\r
56                 }\r
57 \r
58                 protected void EnsureStorage () {\r
59                 }\r
60 \r
61                 protected bool IsBoundary (int index, int startpos, int endpos) {\r
62                         return false;\r
63                 }\r
64 \r
65                 protected bool IsECMABoundary (int index, int startpos, int endpos) {\r
66                         return false;\r
67                 }\r
68 \r
69                 protected bool IsMatched (int cap) {\r
70                         return false;\r
71                 }\r
72 \r
73                 protected int MatchIndex (int cap) {\r
74                         return 0;\r
75                 }\r
76 \r
77                 protected int MatchLength (int cap) {\r
78                         return 0;\r
79                 }\r
80 \r
81                 protected int PopCrawl () {\r
82                         return 0;\r
83                 }\r
84 \r
85                 protected void TransferCapture (int capnum, int uncapnum, int start, int end) {\r
86                 }\r
87 \r
88                 protected void Uncapture () {\r
89                 }\r
90 \r
91                 // internal\r
92                 \r
93                 protected internal Match Scan (Regex regex, string text, int textbeg, int textend, int textstart, int prevlen, bool quick) {\r
94                         return null;\r
95                 }\r
96         }\r
97 }\r