Fixed new Tensor to be everything (Scalar, Vector, Matrix and above)

This commit is contained in:
AdrienBouvais
2026-04-27 09:11:24 +02:00
parent 934a40fe1a
commit f37a196b15
5 changed files with 354 additions and 396 deletions
+1 -2
View File
@@ -1,5 +1,4 @@
const std = @import("std");
const hlp = @import("helper.zig");
const Dimensions = @import("Dimensions.zig");
const Dimension = @import("Dimensions.zig").Dimension;
@@ -99,7 +98,7 @@ data: std.EnumArray(Dimension, UnitScale),
pub fn init(comptime init_val: ArgOpts) Self {
comptime var s = Self{ .data = std.EnumArray(Dimension, UnitScale).initFill(.none) };
inline for (std.meta.fields(@TypeOf(init_val))) |f| {
if (comptime hlp.isInt(@TypeOf(@field(init_val, f.name))))
if (comptime @typeInfo(@TypeOf(@field(init_val, f.name))) == .comptime_int)
s.data.set(@field(Dimension, f.name), @enumFromInt(@field(init_val, f.name)))
else
s.data.set(@field(Dimension, f.name), @field(init_val, f.name));