Răsfoiți Sursa

Add `reflect.length` + `reflect.capacity` support for `#simd[N]T`

Jeroen van Rijn 5 luni în urmă
părinte
comite
41d4ddbc5e
1 a modificat fișierele cu 8 adăugiri și 0 ștergeri
  1. 8 0
      core/reflect/reflect.odin

+ 8 - 0
core/reflect/reflect.odin

@@ -261,7 +261,11 @@ length :: proc(val: any) -> int {
 		} else {
 			return (^runtime.Raw_String)(val.data).len
 		}
+
+	case Type_Info_Simd_Vector:
+		return a.count
 	}
+
 	return 0
 }
 
@@ -287,7 +291,11 @@ capacity :: proc(val: any) -> int {
 
 	case Type_Info_Map:
 		return runtime.map_cap((^runtime.Raw_Map)(val.data)^)
+
+	case Type_Info_Simd_Vector:
+		return a.count
 	}
+
 	return 0
 }