STM32F769IDiscovery  1.00
uDANTE Audio Networking with STM32F7 DISCO board
ImportsFrom.cs
Go to the documentation of this file.
1 /*
2  * Created by SharpDevelop.
3  * User: lextm
4  * Date: 2008/5/31
5  * Time: 12:07
6  *
7  * To change this template use Tools | Options | Coding | Edit Standard Headers.
8  */
9 
10 using System.Collections.Generic;
11 
12 namespace Lextm.SharpSnmpLib.Mib.Elements
13 {
14  public sealed class ImportsFrom
15  {
16  private readonly string _module;
17  private readonly List<string> _types = new List<string>();
18 
19  public ImportsFrom(Symbol last, ISymbolEnumerator symbols)
20  {
21  Symbol previous = last;
23  while ((current = symbols.NextSymbol()) != Symbol.From)
24  {
25  if (current == Symbol.EOL)
26  {
27  continue;
28  }
29 
30  if (current == Symbol.Comma)
31  {
32  previous.AssertIsValidIdentifier();
33  _types.Add(previous.ToString());
34  }
35 
36  previous = current;
37  }
38 
39  previous.AssertIsValidIdentifier();
40  _types.Add(previous.ToString());
41 
42  _module = symbols.NextSymbol().ToString().ToUpperInvariant(); // module names are uppercase
43  }
44 
45  public string Module
46  {
47  get { return _module; }
48  }
49 
50  public IList<string> Types
51  {
52  get { return _types; }
53  }
54 
55  public override string ToString()
56  {
57  return string.Join(", ", _types.ToArray()) + " FROM " + _module;
58  }
59  }
60 }
static readonly Symbol Comma
Definition: Symbol.cs:205
static readonly Symbol EOL
Definition: Symbol.cs:198
ImportsFrom(Symbol last, ISymbolEnumerator symbols)
Definition: ImportsFrom.cs:19
static readonly Symbol From
Definition: Symbol.cs:190
Description of Symbol.
Definition: Symbol.cs:20
override string ToString()
Returns a String that represents this Symbol.
Definition: Symbol.cs:83