Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tracking issue for planned features we may want to use #642

Open
lilizoey opened this issue Mar 10, 2024 · 2 comments
Open

Tracking issue for planned features we may want to use #642

lilizoey opened this issue Mar 10, 2024 · 2 comments
Labels
tracker Groups a list of related issues and tracks progress

Comments

@lilizoey
Copy link
Member

lilizoey commented Mar 10, 2024

Some unstable or planned rust or godot features may be useful to us when they are stabilized/implemented.

Rust

  • c string literals, this may simplify/optimize creation of stringy types. currently planned for stabilization in rust 1.77
  • diagnostic::on_unimplemented, this would let us customize some error messages emitted by the compiler in our proc macros. currently planned for stabilization in rust 1.78.
  • arbitrary self types, this would let us simplify some method calls by for instance not needing Deref for Gd<Object> to Object

Godot

@lilizoey lilizoey added the tracker Groups a list of related issues and tracks progress label Mar 10, 2024
@lilizoey lilizoey changed the title Tracking issue for planned features we may wamt to use Tracking issue for planned features we may want to use Mar 10, 2024
@Bromeon
Copy link
Member

Bromeon commented Mar 11, 2024

Thanks! It seems like C string literals and on_unimplemented are happening soon enough, but arbitrary self types are nowhere and I wouldn't make anything dependent on them.

We should only track features that are planned to be implemented in the near future, to avoid unbounded and perpetually open issues. We can always create new issues, should arbitrary self types ever get into the language.

On the Godot side, I'd expect typed dictionaries and nullable types to also happen relatively soon (4.4), with structs and traits being a bit further out. But Godot has a significantly better track record on getting things done than Rust (of course also a bit lower stakes) 😉

@Bromeon
Copy link
Member

Bromeon commented Mar 22, 2024

C string literals are now stable, as of Rust 1.77.0 release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tracker Groups a list of related issues and tracks progress
Projects
None yet
Development

No branches or pull requests

2 participants