diff options
Diffstat (limited to 'mcs/ilasm/scanner/StringHelperBase.cs')
-rw-r--r-- | mcs/ilasm/scanner/StringHelperBase.cs | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/mcs/ilasm/scanner/StringHelperBase.cs b/mcs/ilasm/scanner/StringHelperBase.cs new file mode 100644 index 00000000000..6b88768aee0 --- /dev/null +++ b/mcs/ilasm/scanner/StringHelperBase.cs @@ -0,0 +1,63 @@ +// StringHelperBase.cs
+// Author: Sergey Chaban (serge@wildwestsoftware.com)
+
+using System;
+using System.Text;
+
+namespace Mono.ILASM {
+
+ /// <summary>
+ /// </summary>
+ internal abstract class StringHelperBase {
+
+ protected ILTokenizer host;
+ protected int mode;
+
+ /// <summary>
+ /// </summary>
+ /// <param name="host"></param>
+ public StringHelperBase (ILTokenizer host) {
+ this.host = host;
+ mode = Token.UNKNOWN;
+ }
+
+ /// <summary>
+ /// </summary>
+ /// <returns></returns>
+ public abstract bool Start (char ch);
+
+
+ /// <summary>
+ /// </summary>
+ /// <returns></returns>
+ public bool Start (int ch)
+ {
+ return Start ((char)ch);
+ }
+
+ /// <summary>
+ /// </summary>
+ /// <returns></returns>
+ public bool Start ()
+ {
+ return Start (host.Reader.Peek ());
+ }
+
+
+ /// <summary>
+ /// </summary>
+ /// <returns></returns>
+ public abstract string Build ();
+
+
+ /// <summary>
+ /// </summary>
+ public int TokenId {
+ get {
+ return mode;
+ }
+ }
+
+ }
+
+}
\ No newline at end of file |