You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The library generally holds on to values by using Arc<T> internally. The challenge with this is that iteration over values (in the VM) depends on the iterator being on the context stack which does not work with lifetimes. As a result the current implementation creates a value iterator without lifetimes that unsafely holds a reference to the rust collection iterators of the underlying value types. This works because the refcount is also kept alive but it's an improper use of unsafe.
There might be better ways to do this.
The text was updated successfully, but these errors were encountered:
The library generally holds on to values by using
Arc<T>
internally. The challenge with this is that iteration over values (in the VM) depends on the iterator being on the context stack which does not work with lifetimes. As a result the current implementation creates a value iterator without lifetimes that unsafely holds a reference to the rust collection iterators of the underlying value types. This works because the refcount is also kept alive but it's an improper use of unsafe.There might be better ways to do this.
The text was updated successfully, but these errors were encountered: