/*
* Created by SharpDevelop.
* User: lextm
* Date: 2008/5/17
* Time: 17:38
*
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System.Collections.Generic;
namespace Lextm.SharpSnmpLib.Mib
{
///
/// MIB document.
///
public sealed class MibDocument
{
private readonly List _modules = new List();
///
/// Initializes a new instance of the class.
///
/// The file.
public MibDocument(string file)
: this(new Lexer(file))
{
}
///
/// Initializes a new instance of the class.
///
/// The lexer.
public MibDocument(Lexer lexer)
{
ISymbolEnumerator symbols = lexer.GetEnumerator();
Symbol current;
while ((current = symbols.NextNonEOLSymbol()) != null)
{
symbols.PutBack(current);
_modules.Add(new MibModule(symbols));
}
}
///
/// containing in this document.
///
public IList Modules
{
get
{
return _modules;
}
}
}
}