ruffle/ruffle_gc_arena
Aaron Hill 84f788c2d2
avm2: Use RawTable to implement 'public index' iteration (#12470)
* avm2: Use RawTable to implement 'public index' iteration

This makes our implementation more closely aligned with avmplus.
In particular, it's now possible to delete keys from an object
while iterating without disturbing the iteration order (as long
as those keys were already produced by the iterator).

This is based on @Bale001's work on RawTable-based iteration

A few tests had their output changed (they depend on the exact
object iteration order, and don't neccessarily match Flash Player
exactly).

* Use Cell to store index fields

* Remove outdated comment
2023-10-28 20:44:01 +00:00
..
src ruffle_gc_arena: Remove MutationContext typedef 2023-08-16 16:11:57 +02:00
Cargo.toml avm2: Use RawTable to implement 'public index' iteration (#12470) 2023-10-28 20:44:01 +00:00