static void Main(string[] args) { var input = File.ReadAllText(WebGL1SpecFile); input += File.ReadAllText(WebGL2SpecFile); var inputStream = CharStreams.fromstring(input); var lexer = new WebIDLLexer(inputStream); var tokenStream = new CommonTokenStream(lexer); var parser = new WebIDLParser(tokenStream); var contextSyntaxTree = parser.webIDL(); using (var outputStream = File.CreateText(OutputFile)) { outputStream.WriteLine("using WebAssembly.Core;"); outputStream.WriteLine(); outputStream.WriteLine("namespace WebGLDotNET"); outputStream.WriteLine("{"); outputStream.WriteLine("#pragma warning disable MEN002"); var listener = new WebIDLListener(outputStream); ParseTreeWalker.Default.Walk(listener, contextSyntaxTree); outputStream.WriteLine("#pragma warning restore MEN002"); outputStream.WriteLine("}"); } }
public Document(string sourcetext) { var stringstream = new ANTLRStringStream(sourcetext); var lexer = new WebIDLLexer(stringstream); var tokens = new CommonTokenStream(lexer); var grammar = new WebIDLParser(tokens); this.members = new Package(this); this.members.append((CommonTree)grammar.documentDef().Tree); }