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

Require zerogc #4

Draft
wants to merge 14 commits into
base: master
Choose a base branch
from
Draft

Require zerogc #4

wants to merge 14 commits into from

Conversation

Techcable
Copy link
Member

@Techcable Techcable commented Sep 5, 2021

Benefits:

  1. GcDeserialize - Allow serializing/deserializing TypeInfo structures
  2. Allows heap allocated type info

Downsides:

  1. zerogc is a pretty big and complex dependency

Requiring this will make it much harder to use outside of my compiler....

Because of the relative instability of zerogc, I'm going to keep this in a branch for now.
It is possible if I merge this if zerogc starts to stabilize and gains wider acceptance.....

Doesn't work becuase of const-fn limitations
Benefits:
1. Support GcDeserialize
2. Support heap-allocated type information

Downsides:
1. Requires zerogc, which is a pretty big dependency :(

Because of the relative instability of zerogc,
I'm keeping this in a seperate branch...

It is possible I may decide to merge it into master (especially if
zerogc starts to stabilize some more)
This is why I need to always `cargo test --workspace` :p
Fix strange Id: Serialize bounds

Add Serialize/GcDeserialize impl for FunctionDeclaration
Gc now implements Deref<Target=T>
instead of Deref<Target=&'gc T>
Tests are a little broken (but mostly the expected code
and #[reflect_func]
Also fixes #[reflect_func] attribute
It's just an ugly hack because I can't
get lifetime variance to work -_-
Add a test to prevent this from regressing...
@Techcable Techcable force-pushed the master branch 3 times, most recently from 4b5915b to 55b0936 Compare November 6, 2021 23:05
This adds in commit 55b0936
(essentially the removal of the const_panic feature)
Also remove #[feature(const_raw_ptr_deref)]
@Techcable
Copy link
Member Author

Do not want to rely on zerogc here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant