**** Merged from MCS ****
[mono-project.git] / mcs / ilasm / scanner / StringHelperBase.cs
blob6b88768aee0c8c3a85a058de970b6ebb311f600f
1 // StringHelperBase.cs
2 // Author: Sergey Chaban (serge@wildwestsoftware.com)
4 using System;
5 using System.Text;
7 namespace Mono.ILASM {
9 /// <summary>
10 /// </summary>
11 internal abstract class StringHelperBase {
13 protected ILTokenizer host;
14 protected int mode;
16 /// <summary>
17 /// </summary>
18 /// <param name="host"></param>
19 public StringHelperBase (ILTokenizer host) {
20 this.host = host;
21 mode = Token.UNKNOWN;
24 /// <summary>
25 /// </summary>
26 /// <returns></returns>
27 public abstract bool Start (char ch);
30 /// <summary>
31 /// </summary>
32 /// <returns></returns>
33 public bool Start (int ch)
35 return Start ((char)ch);
38 /// <summary>
39 /// </summary>
40 /// <returns></returns>
41 public bool Start ()
43 return Start (host.Reader.Peek ());
47 /// <summary>
48 /// </summary>
49 /// <returns></returns>
50 public abstract string Build ();
53 /// <summary>
54 /// </summary>
55 public int TokenId {
56 get {
57 return mode;