Some API improvements (still needs redesign)
Pre-release
Pre-release
Significant API changes, but the API still needs a redesign to fix soundness issues.
To be clear, this does not fix the outstanding soundness issues.
See commit notes for full list of changes.
Major Features
- Add
GcError
wrapper - Add
GcString
as garbage collected string - Add an "epsilon" collector that never collects memory
- Implement
GcDeserialize
using serde - Optionally emulate
core::alloc
API - Add
GcIndexMap
collection
Public API Changes
- Parameterize
GcSafe
by'gc
lifetime andCollectorId
- Make
GcErase
trait an aliasGcRebrand
Internal Improvements & Fixes
- Use const generics for arrays
- Fix
trait_object_trace!
macro - Make
GcHandle
use generic associated types - Handle cycles in
Trace::NEEDS_TRACE
- Remove
#[feature(...)]
s that have been stabilized