From df1b046bd6bc1afd17aeeae0ee3a0dd75f1480f9 Mon Sep 17 00:00:00 2001 From: anyunderstanding Date: Sun, 29 Dec 2024 21:13:59 +0100 Subject: im in love with lll --- lllars/llltranspiler/src/main/kotlin/Ast.kt | 65 ----------------------------- 1 file changed, 65 deletions(-) delete mode 100644 lllars/llltranspiler/src/main/kotlin/Ast.kt (limited to 'lllars/llltranspiler/src/main/kotlin/Ast.kt') diff --git a/lllars/llltranspiler/src/main/kotlin/Ast.kt b/lllars/llltranspiler/src/main/kotlin/Ast.kt deleted file mode 100644 index 4612dd7..0000000 --- a/lllars/llltranspiler/src/main/kotlin/Ast.kt +++ /dev/null @@ -1,65 +0,0 @@ -package me.any - -import AccessSerializer -import AddresationSerializer -import InstructionSerializer -import kotlinx.serialization.Serializable - -@Serializable(with = AccessSerializer::class) -interface Access - -@Serializable -data class SAccess(val sAddress: Access) : Access - -@Serializable -data class Address(val address: Int) : Access - - -enum class Operation { - ADD, SUB, MUL, DIV, AND, OR, XOR -} - -@Serializable(with = AddresationSerializer::class) -interface Addresation - -data class AddressAddresation(val address: Access) : Addresation - - -data class BinaryOperation( - val op: Operation, - val left: Access, - val right: Access -) : Addresation - -interface SysCall - -class WriteSysCall : SysCall -class ReadSysCall : SysCall - -enum class BranchPolarity { - IFTRUE, IFFALSE -} - -@Serializable(with = InstructionSerializer::class) -interface Instruction - -@Serializable -data class Comment(val comment: String = "") : Instruction - -@Serializable -data class Write(val target: Int, val source: Addresation) : Instruction - -@Serializable -data class LarsCode(val call: SysCall) : Instruction - -@Serializable -data class Label(val label: String) : Instruction - -@Serializable -data class GoTo(val label: String) : Instruction - -@Serializable -data class Branch(val polarity: BranchPolarity, val address: Address, val label: String) : Instruction - -@Serializable -data class Program(val instructions: List<Instruction>) \ No newline at end of file -- cgit v1.2.3