Recursively compare two tvm_ffi values for equality.
(a: Any, b: Any)
| 50 | |
| 51 | |
| 52 | def _assert_any_equal(a: Any, b: Any) -> None: |
| 53 | """Recursively compare two tvm_ffi values for equality.""" |
| 54 | if isinstance(b, tvm_ffi.Array): |
| 55 | assert len(a) == len(b) |
| 56 | for x, y in zip(a, b): |
| 57 | _assert_any_equal(x, y) |
| 58 | elif isinstance(b, (tvm_ffi.Map, tvm_ffi.Dict)): |
| 59 | assert len(a) == len(b) |
| 60 | for k in b: |
| 61 | _assert_any_equal(a[k], b[k]) |
| 62 | elif isinstance(b, tvm_ffi.Shape): |
| 63 | assert list(a) == list(b) |
| 64 | elif isinstance(b, str): |
| 65 | # tvm_ffi String inherits from str |
| 66 | assert str(a) == str(b) |
| 67 | else: |
| 68 | assert a == b |
| 69 | |
| 70 | |
| 71 | # --------------------------------------------------------------------------- |
no outgoing calls
no test coverage detected