aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2021-03-26 16:24:56 +0000
committergingerBill <bill@gingerbill.org>2021-03-26 16:24:56 +0000
commit43ac6ca8f4e68e87f673768d22429119422c325f (patch)
tree37f8703caaf8c62274f8383fc7411fb8b95a60dc
parent62d2656f69cf2302d27a0059b7d3f9ade01df100 (diff)
Add `linalg.matrix_cast`
-rw-r--r--core/container/priority_queue.odin2
-rw-r--r--core/math/linalg/general.odin5
2 files changed, 4 insertions, 3 deletions
diff --git a/core/container/priority_queue.odin b/core/container/priority_queue.odin
index 4b1a76c37..8f3f6bb32 100644
--- a/core/container/priority_queue.odin
+++ b/core/container/priority_queue.odin
@@ -3,7 +3,7 @@ package container
Priority_Queue :: struct(T: typeid) {
data: Array(T),
len: int,
- priority: proc(item: T) -> int
+ priority: proc(item: T) -> int,
}
priority_queue_init_none :: proc(q: ^$Q/Priority_Queue($T), f: proc(item: T) -> int, allocator := context.allocator) {
diff --git a/core/math/linalg/general.odin b/core/math/linalg/general.odin
index 0236f6130..84001184f 100644
--- a/core/math/linalg/general.odin
+++ b/core/math/linalg/general.odin
@@ -317,11 +317,12 @@ cubic :: proc(v1, v2, v3, v4: $T/[$N]$E, s: E) -> T {
array_cast :: proc(v: $A/[$N]$T, $Elem_Type: typeid) -> (w: [N]Elem_Type) {
- for _, i in v do w[i] = Elem_Type(v[i]);
+ for i in 0..<N {
+ w[i] = Elem_Type(v[i]);
+ }
return;
}
-
matrix_cast :: proc(v: $A/[$M][$N]$T, $Elem_Type: typeid) -> (w: [M][N]Elem_Type) {
for i in 0..<M {
for j in 0..<N {