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

[3.0] Miscellaneous generator improvements #2359

Open
wants to merge 7 commits into
base: develop/3.0
Choose a base branch
from

Conversation

Perksey
Copy link
Member

@Perksey Perksey commented Nov 18, 2024

Summary of the PR

  • Added a Utf8String type for string constants that collapses down to a string, ReadOnlySpan<byte>, or ReadOnlySpan<sbyte>. This is to alleviate pains with [3.0] Windowing Rewrite #2278 where I was constantly having to MemoryMarshal.Cast these constants to ReadOnlySpan<sbyte>.
  • Decoupled the bakery logic from AddApiProfiles. This sets the stage for future use cases of the bakery (e.g. varying struct definitions between runtime-specific source sets for MiniAudio, linked below), and also massively simplifies both mods.
  • Change the default INativeContext based implementation of API objects to cache the output of LoadFunction as we did in 2.X. This should massively improve performance.

Related issues, Discord discussions, or proposals

https://discord.com/channels/521092042781229087/521092043288608781/1303461829938249769

Further Comments

#2278 will now be based on this.

@Perksey Perksey added enhancement New feature or request area-SilkTouch labels Nov 18, 2024
@Perksey Perksey requested a review from a team as a code owner November 18, 2024 14:16
@Perksey
Copy link
Member Author

Perksey commented Nov 18, 2024

This is ready for review.

Copy link
Contributor

File Coverage
All files 0%

Minimum allowed coverage is 0%

Generated by 🐒 cobertura-action against 74ddf75

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-SilkTouch enhancement New feature or request
Projects
Status: Todo
Development

Successfully merging this pull request may close these issues.

1 participant