about summary refs log tree commit diff
path: root/pkg/lang/compiler
diff options
context:
space:
mode:
authorMel <einebeere@gmail.com>2022-07-06 14:06:20 +0200
committerMel <einebeere@gmail.com>2022-07-06 14:06:20 +0200
commitb16b70fd40ffc72ff861afe0517cba0e37ba1145 (patch)
tree1969a77f9c3d00160d53ffbe2f4b6ffa7d408165 /pkg/lang/compiler
parent32ec3e1186b3ed29e910ad60a18f956b823ddc23 (diff)
downloadjinx-b16b70fd40ffc72ff861afe0517cba0e37ba1145.tar.zst
jinx-b16b70fd40ffc72ff861afe0517cba0e37ba1145.zip
Implement most of the binary operations
Diffstat (limited to 'pkg/lang/compiler')
-rw-r--r--pkg/lang/compiler/compiler.go20
1 files changed, 7 insertions, 13 deletions
diff --git a/pkg/lang/compiler/compiler.go b/pkg/lang/compiler/compiler.go
index c51728f..116db1c 100644
--- a/pkg/lang/compiler/compiler.go
+++ b/pkg/lang/compiler/compiler.go
@@ -357,31 +357,25 @@ func (comp *Compiler) compileBinaryExpr(t *code.Builder, expr ast.ExprBinary) er
 	case ast.BinOpMinus:
 		t.AppendOp(code.OpSub)
 	case ast.BinOpStar:
-		// t.AppendOp(code.OpMul)
-		panic("not implemented")
+		t.AppendOp(code.OpMul)
 	case ast.BinOpSlash:
-		// t.AppendOp(code.OpDiv)
-		panic("not implemented")
+		t.AppendOp(code.OpDiv)
 	case ast.BinOpPercent:
-		// t.AppendOp(code.OpMod)
-		panic("not implemented")
+		t.AppendOp(code.OpMod)
 
 	case ast.BinOpEq:
-		// t.AppendOp(code.OpEq)
-		panic("not implemented")
+		t.AppendOp(code.OpEq)
 	case ast.BinOpNeq:
-		// t.AppendOp(code.OpNeq)
+		//t.AppendOp(code.OpNeq)
 		panic("not implemented")
 	case ast.BinOpLt:
 		t.AppendOp(code.OpLt)
 	case ast.BinOpLte:
 		t.AppendOp(code.OpLte)
 	case ast.BinOpGt:
-		// t.AppendOp(code.OpGt)
-		panic("not implemented")
+		t.AppendOp(code.OpGt)
 	case ast.BinOpGte:
-		// t.AppendOp(code.OpGte)
-		panic("not implemented")
+		t.AppendOp(code.OpGte)
 	default:
 		panic("unknown binary operator")
 	}