This commit is contained in:
NikolajDanger
2022-06-08 16:16:20 +02:00
parent 935c90f645
commit f4c608aaf2
5 changed files with 130 additions and 120 deletions

View File

@@ -180,7 +180,7 @@ class Erumpe(BaseBox):
return "Erumpe()"
def eval(self, vtable, ftable, _):
vtable["ERUMPE"] = True
vtable["ERVMPE"] = True
return vtable, ftable
class Nullus(BaseBox):
@@ -213,9 +213,9 @@ class BinOp(BaseBox):
case "SYMBOL_DIVIDE":
# TODO: Fractio
return left // right
case "KEYWORD_MINUS":
case "KEYWORD_MINVS":
return left < right
case "KEYWORD_PLUS":
case "KEYWORD_PLVS":
return left > right
case "KEYWORD_EST":
return left == right
@@ -266,11 +266,11 @@ class DumStatement(BaseBox):
vtable, ftable = statement.eval(
vtable, ftable, modules
)
if vtable["ERUMPE"]:
if vtable["ERVMPE"]:
break
if vtable["ERUMPE"]:
vtable["ERUMPE"] = False
if vtable["ERVMPE"]:
vtable["ERVMPE"] = False
break
return vtable, ftable
@@ -297,11 +297,11 @@ class PerStatement(BaseBox):
vtable, ftable = statement.eval(
vtable, ftable, modules
)
if vtable["ERUMPE"]:
if vtable["ERVMPE"]:
break
if vtable["ERUMPE"]:
vtable["ERUMPE"] = False
if vtable["ERVMPE"]:
vtable["ERVMPE"] = False
break
return vtable, ftable
@@ -349,15 +349,15 @@ class BuiltIn(BaseBox):
]
match self.builtin:
case "AUDI_NUMERUS":
case "AVDI_NVMERVS":
return num_to_int(input())
case "DICE":
print(' '.join(make_string(i) for i in parameters))
return None
case "ERUMPE":
vtable["ERUMPE"] = True
case "ERVMPE":
vtable["ERVMPE"] = True
return None
case "FORTIS_NUMERUS":
case "FORTIS_NVMERVS":
# TODO: Fors
return random.randint(parameters[0], parameters[1])
case _:
@@ -374,7 +374,7 @@ class Program(BaseBox):
return f"{modules_string},\n{statements_string}"
def eval(self):
vtable = {"ERUMPE": False}
vtable = {"ERVMPE": False}
ftable = {}
modules = [module.module_name for module in self.modules]