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

Refactor objc2_encode #412

Merged
merged 5 commits into from
Jan 30, 2023
Merged

Refactor objc2_encode #412

merged 5 commits into from
Jan 30, 2023

Conversation

madsmtm
Copy link
Owner

@madsmtm madsmtm commented Jan 29, 2023

Move the traits in it to objc2::encode, and make it no_std and target/platform-agnostic. I also fixed bitfields along the way.

Now, objc2_encode just contains the parsing/representation of encodings (which may be usable elsewhere, e.g. in an Objective-C compiler or something).

This is done because I've found that keeping the Encode/RefEncode/EncodeConvert traits in a separate crate than the rest of objc2 is just too much of a hassle, and a blocker for #277.

Downside is that block2 now depends on objc2 instead of just objc2-encode, which makes the compilation graph slightly worse, but eh, on the other hand objc2-encode now has no dependencies.

@madsmtm madsmtm added enhancement New feature or request A-objc2 Affects the `objc2`, `objc2-exception-helper` and/or `objc2-encode` crates labels Jan 29, 2023
@madsmtm madsmtm linked an issue Jan 29, 2023 that may be closed by this pull request
@madsmtm madsmtm merged commit 6e6ac03 into master Jan 30, 2023
@madsmtm madsmtm deleted the refactor-encode branch January 30, 2023 00:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-objc2 Affects the `objc2`, `objc2-exception-helper` and/or `objc2-encode` crates enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Investigate further Encodings
1 participant