public virtual void Compile(StreamReader input, BytecodeStream output) { var scanner = new Scanner(input); var builder = new ProgramNodeBuilder(); var parser = new Parser(); parser.Parse(scanner, builder); var generator = new RiscCodeGenerator(output); var parseTree = builder.GetRootNode(); parseTree.Traverse(generator); }
public void Parse(Scanner scanner, ProgramNodeBuilder builder) { }