[red-knot] Don't use separate ID types for each alist (#16415)

Regardless of whether #16408 and #16311 pan out, this part is worth
pulling out as a separate PR.

Before, you had to define a new `IndexVec` index type for each type of
association list you wanted to create. Now there's a single index type
that's internal to the alist implementation, and you use `List<K, V>` to
store a handle to a particular list.

This also adds some property tests for the alist implementation.
This commit is contained in:
Douglas Creager
2025-02-28 14:55:55 -05:00
committed by GitHub
parent fdf0915283
commit ba44e9de13
7 changed files with 768 additions and 790 deletions

View File

@@ -47,6 +47,7 @@ jobs:
run: |
export QUICKCHECK_TESTS=100000
for _ in {1..5}; do
cargo test --locked --release --package red_knot_python_semantic -- --ignored list::property_tests
cargo test --locked --release --package red_knot_python_semantic -- --ignored types::property_tests::stable
done