Pointer types - Generic Associated Types Initiative (original) (raw)

  1. 👋 Welcome
  2. 📜 Charter
  3. 🏗️ MVP Stabilization
    1. Concern: GATs permit abstractions that make Rust harder to use
    2. Concern: GATs are too hard to learn, especially in their current state
    3. Concern: we should stabilize lifetime GATs only
    4. Concern: not confident the current MVP is backwards compatible
    5. Concern: Do we have the right rules for required bounds?
  4. 📚 Explainer
    1. Why GATs?
    2. Defining and implementing the Iterable trait with GATs
    3. GATs in where-clauses
    4. Rough edges
      1. Required bounds
        1. No implied bounds on HRTB
  5. 🔮 Shiny future
    1. Defining and implementing the Iterable trait with GATs
    2. GATs in where-clauses
    3. Proposals
  6. ✍️ Design patterns
    1. Iterable and lending iterators
  7. Many modes
  8. Generic scopes
  9. Pointer types
  10. 💬 Design discussions
    1. 💬 Outlives defaults
    1. Initial write-up
  11. 💬 Where does the where clause go?
    1. Initial write-up
  12. 💬 Are GATs too complex?
  13. 💬 Should GATs only support lifetime parameters?
  14. 😕 FAQ

Generic Associated Types Initiative

Pointer types

available on nightly stabilization

Summary

GATs allow code to be generic over "references to data". This can include Rc vs Arc, but also other more abstract situations.

Details

(To be written.)

References