@@ -11,12 +11,13 @@ import array_api_typing as xpt
11
11
# DType aliases
12
12
F32 : TypeAlias = np .float32
13
13
I32 : TypeAlias = np .int32
14
+ B : TypeAlias = np .bool_
14
15
15
16
# Define NDArrays against which we can test the protocols
16
17
nparr : npt .NDArray [Any ]
17
18
nparr_i32 : npt .NDArray [I32 ]
18
19
nparr_f32 : npt .NDArray [F32 ]
19
- nparr_b : npt .NDArray [np . bool_ ]
20
+ nparr_b : npt .NDArray [B ]
20
21
21
22
# =========================================================
22
23
# `xpt.HasArrayNamespace`
@@ -42,7 +43,7 @@ _: xpt.HasArrayNamespace[dict[str, int]] = nparr # not caught
42
43
_ : xpt .HasDType [Any ] = nparr
43
44
_ : xpt .HasDType [np .dtype [I32 ]] = nparr_i32
44
45
_ : xpt .HasDType [np .dtype [F32 ]] = nparr_f32
45
- _ : xpt .HasDType [np .dtype [np . bool_ ]] = nparr_b
46
+ _ : xpt .HasDType [np .dtype [B ]] = nparr_b
46
47
47
48
# =========================================================
48
49
# `xpt.Array`
@@ -52,6 +53,11 @@ a_ns: xpt.Array[Any, ModuleType] = nparr
52
53
53
54
# Check DTypeT_co assignment
54
55
_ : xpt .Array [Any ] = nparr
55
- _ : xpt .Array [np .dtype [I32 ]] = nparr_i32
56
- _ : xpt .Array [np .dtype [F32 ]] = nparr_f32
57
- _ : xpt .Array [np .dtype [np .bool_ ]] = nparr_b
56
+ x_f32 : xpt .Array [np .dtype [F32 ]] = nparr_f32
57
+ x_i32 : xpt .Array [np .dtype [I32 ]] = nparr_i32
58
+ x_b : xpt .Array [np .dtype [B ]] = nparr_b
59
+
60
+ # Check Attribute `.dtype`
61
+ _ : np .dtype [F32 ] = x_f32 .dtype
62
+ _ : np .dtype [I32 ] = x_i32 .dtype
63
+ _ : np .dtype [B ] = x_b .dtype
0 commit comments