public override TypeLibrary Load(Platform platform) { this.platform = platform; var loader = new TypeLibraryLoader(platform, true); loader.SetModuleName(DefaultModuleName(filename)); for (;;) { var tok = Get(); switch (tok.Type) { case TokenType.EOF: return(loader.BuildLibrary()); case TokenType.EXPORTS: ParseExports(loader); break; case TokenType.LIBRARY: ParseLibrary(loader); break; default: throw new NotImplementedException( string.Format("Unknown token {0} ({1}) on line {2}.", tok.Type, tok.Text, tok.LineNumber)); } } }
public TypeLibrary Load(Platform platform, string module) { this.platform = platform; this.tlLoader = new TypeLibraryLoader(platform, true); tlLoader.SetModuleName(module); for (;;) { var tok = Peek(); if (tok.Type == TokenType.EOF) { break; } if (PeekAndDiscard(TokenType.NL)) { continue; } ParseLine(); } return(tlLoader.BuildLibrary()); }
public override TypeLibrary Load() { var loader = new TypeLibraryLoader(arch, true); loader.SetModuleName(DefaultModuleName(filename)); for (; ; ) { var tok = Get(); switch (tok.Type) { case TokenType.EOF: return loader.BuildLibrary(); case TokenType.EXPORTS: ParseExports(loader); break; case TokenType.LIBRARY: ParseLibrary(loader); break; default: throw new NotImplementedException( string.Format("Unknown token {0} ({1}) on line {2}.", tok.Type, tok.Text, tok.LineNumber)); } } }