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

Remove a bunch of unecessary internal reference counting #304

Merged
merged 1 commit into from
Nov 12, 2021

Conversation

udoprog
Copy link
Collaborator

@udoprog udoprog commented Nov 11, 2021

So this is another big one, and it changes how macros are written.

Macros after this change takes an explicit ctx argument with the type &mut MacroContext<'_>. This context provides access to everything you need in order to implement a macro and used to be provided through TLS.

The TLS has been removed, and as a result it's not possible to remove internal reference counting and RefCell for Query, Storage, and Consts because the lifetime of these can be handled in Rust directly instead.

@udoprog udoprog added the enhancement New feature or request label Nov 11, 2021
@udoprog udoprog force-pushed the query-refactor branch 2 times, most recently from 81572d2 to e25125f Compare November 11, 2021 17:28
@udoprog udoprog enabled auto-merge (rebase) November 11, 2021 23:52
@udoprog udoprog merged commit f90d6bf into main Nov 12, 2021
@udoprog udoprog deleted the query-refactor branch March 7, 2024 18:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant