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));
         }
     }
 }
Beispiel #2
0
        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();
        }