From a3cac69c99f62ea1bc99ea1e3e648158a9311f1d Mon Sep 17 00:00:00 2001 From: KevinKor01 Date: Sat, 1 Nov 2025 02:25:46 +0200 Subject: [PATCH] part 1 --- Compiler/Fparser.py | 30 ++++++- Compiler/Fwritter.py | 81 ++++++++++++++++++ Compiler/__pycache__/Fparser.cpython-312.pyc | Bin 0 -> 1034 bytes Compiler/__pycache__/Fwritter.cpython-312.pyc | Bin 0 -> 2013 bytes Compiler/ppc.py | 6 +- testFile.pc | 6 +- 6 files changed, 116 insertions(+), 7 deletions(-) create mode 100644 Compiler/Fwritter.py create mode 100644 Compiler/__pycache__/Fparser.cpython-312.pyc create mode 100644 Compiler/__pycache__/Fwritter.cpython-312.pyc diff --git a/Compiler/Fparser.py b/Compiler/Fparser.py index bf785ca..53e29e2 100644 --- a/Compiler/Fparser.py +++ b/Compiler/Fparser.py @@ -2,8 +2,34 @@ -def readfile(filepath): +def readfile(filepath, printFile): with open(filepath, "r") as file: + fileExportBuffer = [] + lines = file.readlines() + print(lines) + + + + lineNum = 0 for line in lines: - print(line.strip()) + + line = line.strip() + fileExportBuffer.append(str(line)) + lineNum += 1 + + print(fileExportBuffer) + return fileExportBuffer + + +def meshBuffer(fileExportBuffer, devlog): + meshedbuffer = "" + for text in fileExportBuffer: + meshedbuffer += text + if devlog: print("Meshed :" , meshedbuffer) + return meshedbuffer + + + + + diff --git a/Compiler/Fwritter.py b/Compiler/Fwritter.py new file mode 100644 index 0000000..b82ec78 --- /dev/null +++ b/Compiler/Fwritter.py @@ -0,0 +1,81 @@ +from enum import StrEnum +from re import split + + +fileBuffer = [] +variables = [] + +class color(StrEnum): + RED = '\033[91m' + GREEN = '\033[92m' + YELLOW = '\033[93m' + BLUE = '\033[94m' + ENDC = '\033[0m' + + + +selectedApp = "" + +def log(text,colorCode): + + print(f"{colorCode} {text} {color.ENDC}") + + + + +def beginApp(name): + selectedApp = name + fileBuffer.append("προγραμμα "+ str(name)) + fileBuffer.append("αρχη") + + + + + + + + + + + + + + + + + + +def CompileApp(buffer,devlogs): + + + + + + + + +def grabScriptType(inBuffer: str,devlogs): + ScriptType = inBuffer.split(" ") + + match ScriptType[0]: + case "App" | "Program": + print("Application Script") + + if devlogs: print("App Name:" ,str(ScriptType[1])) + + CompileApp(inBuffer, True) + + + + + case "Lib" |"Library": + print("Library Script") + case "Ast" | "Asset": + print("Asset Script") + + + + case _: + log("Incorect Syntax @..." + str(ScriptType[0])+ " " +str(ScriptType[1])+"...", color.YELLOW) + log(" ╰──────> ERROR - ScriptType Not Declared", color.RED) + diff --git a/Compiler/__pycache__/Fparser.cpython-312.pyc b/Compiler/__pycache__/Fparser.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..64b86bfa7ccb0a6477e676bd00a9209d0d6b7a42 GIT binary patch literal 1034 zcmZ8f%}X0m5TCdEHrb6EO-YJcwWjsbKx@$AK@mYsm4XcgPulj7c2|ugX8U&I7aQ|FHlEmxLmqdM9;d;YJtojTpSQfp1|z<5mQwp$GcFCMyzw86fzr!Kyq1D07E3QVT(KRNwzw~4q2J&#sxd!T=h7L|N;wN$tA%}!BSGpdtD@{X8PI6dRUzqlS zX+(!&gsF%bqpSrF?la8gOm3d**{c6-Z6wq&R~=h4Atu1WA~GN%Y9nL!(9n**-H&Vo zyzt$PDKCUKBT841dTL~c9;lt0dPPRVZ-20q-p5mYGA32$QU&`C otOIS;N|)+zHfQ8B<_POTn^-_w^on4FoCWTX==mdsv{e)S0nI7mp#T5? literal 0 HcmV?d00001 diff --git a/Compiler/__pycache__/Fwritter.cpython-312.pyc b/Compiler/__pycache__/Fwritter.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..f46aa8543b6765f0b1fb9c555c9461d21136750d GIT binary patch literal 2013 zcmah~Z)g-p6rb5Y_h++rxx`DXi0P`u_OQ9MwkTq;YH|iOoSGPHPRp^m+32SC&)Gej zJ0h$Qs1*t+R1zve3x!tV2c;kCheBK0FQp~P5rfB|P;9^WEf_!fsc-gfFG(rwOZL6r z%)Iwz-kUe?ehY;Z1hnt8Z2l}F^d}#9Bsak7aR4)jAcC_fhf^4%3n(SPCkm(^5n&1u z(ZF+H&nYDlDJ2tm3Z;C+2i#BmMqo@Jfhj2!EC*xCQ?3@n%s*t)M81^E@Ucg@0ai5t zGsr+GOkg*HQz8+-w+Ox^@GPhNWnawCAapZ(rKoo)42jEWjR*U=}RR&+gK3?6ManXA50{Y%r}x47&v*BNk;~T6HH1Z z`+9GqRer!1dwX(uyQhzumyJC=r!1pH3jNuFW$E3$gR-uUD_<(JlZ(ph%Tl)+ zRi=4lFz~_WhGPSmL6hhT=BQ5Njk@y2TtaYOb%M4RMg>+pjM4vi5Y{vycrjVp1l9}A z!qxd7=D!7gZ~lAuyQh@`Fh759;p)Oi^WQ;wlrgy6Bc-u1gEF69EE;*jM9Zc;O}vCy zi)CbujBSv^#o~rU1xAevW*%l~7r5L4pVbY_LACZy=foo^{7~wsN*#-xyYCF$jn0i! zJNG`2_BH3H$Cst;ZthsX%-2uw??rJPa?7(gzCOpW6DNYbxUUG40ulHzCh!C%;s>um zW#W7Qu++c;M)@#Ckjv&BkPSuSTKd*m`v1c+;O)%I4R#5xvs2dDg*NQhvfe6)*6y9C zHh%^#d69U!yb=iJe1lGiN4r5M?CS6aUquMmeL*dVz^5#`<6D=GCfyG418vyeY<1(}b ziz)S>xIc^65FDW1HNp`8=-MLP4U62=`WzTMiMA~>U7vP+AuhGO;vD}&iB6yXxVskW z`egXV$Wo~5k=nM{zH3>1wHDe2Q^%G<+uW%g%j(X@q4pbRucu)=9bZJO6`1botu>;k}f%`+%$e~|${y4sPdhn;*(vdUO$eG3AR5g-%a9)3S{$lm~ z#RsbCTAuiQcwyw%k!AI)`~H$Kg-Hhda8Vu-