public void PrintFunctToConsole(DeclFunct decl, string indentation) { for (var i = 0; i < decl.registerTypes.Count; i++) { Console.ResetColor(); Console.Out.Write(indentation); Console.Out.Write("#r" + i); Console.Out.Write(" "); if (decl.registerMutabilities[i]) { Console.Out.Write("mut "); } Console.ForegroundColor = ConsoleColor.DarkGray; Console.Out.Write(decl.registerTypes[i].GetString(this)); Console.ResetColor(); Console.Out.WriteLine(); } Console.Out.WriteLine(); for (var i = 0; i < decl.localBindings.Count; i++) { Console.ResetColor(); Console.Out.Write(indentation); Console.Out.Write(decl.localBindings[i].name.GetString()); Console.Out.Write(" "); Console.ForegroundColor = ConsoleColor.DarkGray; Console.Out.Write("#r" + decl.localBindings[i].registerIndex); Console.ResetColor(); Console.Out.WriteLine(); } Console.Out.WriteLine(); for (var i = 0; i < decl.segments.Count; i++) { Console.ForegroundColor = ConsoleColor.Yellow; Console.Out.Write(indentation); Console.Out.Write("segment #s" + i); Console.ResetColor(); Console.Out.WriteLine(); for (var j = 0; j < decl.segments[i].instructions.Count; j++) { decl.segments[i].instructions[j].PrintToConsole(indentation + " "); } decl.segments[i].outFlow.PrintToConsole(indentation + " "); } }
public int CreateFunct(Name name) { var decl = new DeclFunct(); this.declFuncts.Add(decl); var declRef = new DeclReference { kind = DeclReference.Kind.Funct, index = this.declFuncts.Count - 1 }; this.declTree.Add(name, declRef); return this.declFuncts.Count - 1; }
public int CreateFunct(Name name) { var decl = new DeclFunct(); this.declFuncts.Add(decl); var declRef = new DeclReference { kind = DeclReference.Kind.Funct, index = this.declFuncts.Count - 1 }; this.declTree.Add(name, declRef); return(this.declFuncts.Count - 1); }
public void PrintFunctToConsole(DeclFunct decl, string indentation) { for (var i = 0; i < decl.registerTypes.Count; i++) { Console.ResetColor(); Console.Out.Write(indentation); Console.Out.Write("#r" + i); Console.Out.Write(" "); if (decl.registerMutabilities[i]) Console.Out.Write("mut "); Console.ForegroundColor = ConsoleColor.DarkGray; Console.Out.Write(decl.registerTypes[i].GetString(this)); Console.ResetColor(); Console.Out.WriteLine(); } Console.Out.WriteLine(); for (var i = 0; i < decl.localBindings.Count; i++) { Console.ResetColor(); Console.Out.Write(indentation); Console.Out.Write(decl.localBindings[i].name.GetString()); Console.Out.Write(" "); Console.ForegroundColor = ConsoleColor.DarkGray; Console.Out.Write("#r" + decl.localBindings[i].registerIndex); Console.ResetColor(); Console.Out.WriteLine(); } Console.Out.WriteLine(); for (var i = 0; i < decl.segments.Count; i++) { Console.ForegroundColor = ConsoleColor.Yellow; Console.Out.Write(indentation); Console.Out.Write("segment #s" + i); Console.ResetColor(); Console.Out.WriteLine(); for (var j = 0; j < decl.segments[i].instructions.Count; j++) decl.segments[i].instructions[j].PrintToConsole(indentation + " "); decl.segments[i].outFlow.PrintToConsole(indentation + " "); } }