2010-04-07 Jb Evain <jbevain@novell.com>
[mcs.git] / ilasm / parser / ScannerAdapter.cs
blob45a0cc897440ef482f86984ef8ec49218312e3e7
1 // ScannerAdapter.cs
2 // (C) Sergey Chaban (serge@wildwestsoftware.com)
4 using System;
6 namespace Mono.ILASM {
8 /// <summary>
9 /// </summary>
10 public class ScannerAdapter : yyParser.yyInput {
12 private ITokenStream tokens;
14 /// <summary>
15 /// </summary>
16 /// <param name="tokens"></param>
17 public ScannerAdapter (ITokenStream tokens)
19 this.tokens = tokens;
23 /// <summary>
24 /// </summary>
25 public ITokenStream BaseStream {
26 get {
27 return tokens;
32 // yyParser.yyInput interface
35 /// <summary>
36 /// </summary>
37 /// <returns></returns>
38 public bool advance ()
40 return (tokens.NextToken != ILToken.EOF);
43 /// <summary>
44 /// </summary>
45 /// <returns></returns>
46 public int token ()
48 return tokens.LastToken.TokenId;
51 /// <summary>
52 /// </summary>
53 /// <returns></returns>
54 public object value ()
56 return tokens.LastToken.Value;