( a: Item | InnerList, b: Item | InnerList, )
| 872 | |
| 873 | // Compare list members for equality |
| 874 | function listMembersEqual( |
| 875 | a: Item | InnerList, |
| 876 | b: Item | InnerList, |
| 877 | ): boolean { |
| 878 | const aIsInner = "items" in a; |
| 879 | const bIsInner = "items" in b; |
| 880 | if (aIsInner !== bIsInner) return false; |
| 881 | if (aIsInner && bIsInner) { |
| 882 | return innerListsEqual(a as InnerList, b as InnerList); |
| 883 | } |
| 884 | return itemsEqual(a as Item, b as Item); |
| 885 | } |
| 886 | |
| 887 | // Interface for test case from JSON files |
| 888 | interface ConformanceTestCase { |
no test coverage detected