Skip to content

Commit

Permalink
find a way to take back what is yours
Browse files Browse the repository at this point in the history
  • Loading branch information
Shahriar-0 committed Jun 8, 2024
1 parent b78e18c commit 0cf0f25
Show file tree
Hide file tree
Showing 7 changed files with 77 additions and 279 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@ target/

# Compiled class file
*.class
!Phase-4/codeGenOutput/**/*.class
!Phase-4/samples/**/*.class


# Log file
*.log
Expand Down
132 changes: 0 additions & 132 deletions Phase-4/codeGenOutput/Fptr.j

This file was deleted.

124 changes: 0 additions & 124 deletions Phase-4/codeGenOutput/List.j

This file was deleted.

22 changes: 0 additions & 22 deletions Phase-4/codeGenOutput/Main.j

This file was deleted.

74 changes: 74 additions & 0 deletions Phase-4/helper.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
$ErrorActionPreference = "SilentlyContinue"

function CompileTest() {
java "@arg.argfile" "main.FunctionCraft" "samples/sample.fl" > $null
}

function ConvertJasmineToClass() {
java -jar "./utilities/jarFiles/jasmin.jar" "./codeGenOutput/*.j" > $null
Move-Item "./*.class" "./codeGenOutput"
}

function ConvertClassToJavaByteCode($classFile) {
$classFile = "./samples" + $classFile + ".class"
javap -c -l -s -v $classFile
}

function ConvertClassToJasmine($classFile) {
$classFile = "./samples" + $classFile + ".class"
java -jar "./utilities/jarFiles/classFileAnalyzer.jar" $classFile > $null
}

function RunCompiledCode() {
Set-Location "./codeGenOutput"
java Main
Set-Location ".."
}

function MoveFilesToSample($i) {
New-Item -ItemType Directory -Path "./samples/$i" -Force > $null
Move-Item "./codeGenOutput/*.j" "./samples/$i"
Move-Item "./codeGenOutput/*.class" "./samples/$i"
Copy-Item "./samples/sample.fl" "./samples/$i"
Move-Item "./samples/typeCheckErrors.txt" "./samples/$i"
}

if ($args.Length -eq 0) {
CompileTest
}
else {
if ($args[0] -eq "-t" -or $args[0] -eq "--test") {
CompileTest
}
elseif ($args[0] -eq "-c" -or $args[0] -eq "--convert") {
ConvertJasmineToClass
}
elseif ($args[0] -eq "-b" -or $args[0] -eq "--bytecode") {
ConvertClassToJavaByteCode $args[1]
}
elseif ($args[0] -eq "-j" -or $args[0] -eq "--jasmine") {
ConvertClassToJasmine $args[1]
}
elseif ($args[0] -eq "-r" -or $args[0] -eq "--run") {
RunCompiledCode
}
elseif ($args[0] -eq "-m" -or $args[0] -eq "--move") {
MoveFilesToSample $args[1]
}
elseif ($args[0] -eq "-h" -or $args[0] -eq "--help") {
Write-Host "Usage: runTests.ps1 [OPTION] [ARGUMENT]"
Write-Host "Options:"
Write-Host " -t, --test Compile the test file"
Write-Host " -c, --convert Convert Jasmine to class files"
Write-Host " -b, --bytecode Convert class file to Java bytecode"
Write-Host " -j, --jasmine Convert class file to Jasmine"
Write-Host " -r, --run Run the compiled code"
Write-Host " -m, --move Move files to samples directory"
Write-Host " -h, --help Display this help message"
}
else {
Write-Host "Invalid argument" -ForegroundColor Red
}
}

# © Sayeh
1 change: 0 additions & 1 deletion Phase-4/runTests.ps1

This file was deleted.

Empty file.

0 comments on commit 0cf0f25

Please sign in to comment.