Enable processing of For Loops.

This commit is contained in:
2026-03-19 16:23:20 -04:00
parent 4d7d246431
commit f3c4a1b537
12 changed files with 608 additions and 149 deletions

View File

@@ -9,7 +9,11 @@ namespace Axiom.Interpreter
{
public class Scanner : Emitter
{
public enum ScanSymbols { unknown1, directive_clear_modified1,declare1, null1, isnull1, convert1, getprice1, substring1, in1, like1, trim1, upper1, lower1, assign1, if1, while1, then1,else1,goto1,equal1,equalequal1,less1,lessequal1,greater1,greaterequal1, notequal1,variable1, asterisk1, apostrophe1, comma1, label1, literal1, leftcurly1, rightcurly1, leftbracket1, rightbracket1, numeral1, char1, divide1, plus1, minus1, leftparen1, rightparen1, newline1, semicolon1,endtext1, andand1, oror1, abs1, not1, pow1, sqrt1, break1, end1 };
public enum ScanSymbols { unknown1, directive_clear_modified1,declare1, null1, isnull1, convert1,
getprice1, substring1, in1, like1, trim1, upper1, lower1, assign1, if1, while1, for1, then1, else1, goto1,
equal1, equalequal1, less1, lessequal1, greater1, greaterequal1, notequal1, variable1, asterisk1, apostrophe1,
comma1, label1, literal1, leftcurly1, rightcurly1, leftbracket1, rightbracket1, numeral1, char1, divide1, plus1,
minus1, leftparen1, rightparen1, newline1, semicolon1,endtext1, andand1, oror1, abs1, not1, pow1, sqrt1, break1, end1 };
private enum WhiteSpace{spacechar=32,tabchar=9};
private int character;
private StringBuilder word;
@@ -409,6 +413,8 @@ namespace Axiom.Interpreter
return "if";
case Scanner.ScanSymbols.while1 :
return "while";
case Scanner.ScanSymbols.for1 :
return "for";
case Scanner.ScanSymbols.then1 :
return "then";
case Scanner.ScanSymbols.else1 :
@@ -523,6 +529,8 @@ namespace Axiom.Interpreter
return "if1";
case Scanner.ScanSymbols.while1 :
return "while1";
case Scanner.ScanSymbols.for1 :
return "for1";
case Scanner.ScanSymbols.then1 :
return "then1";
case Scanner.ScanSymbols.else1 :