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

Transition away from the header-only library model #22

Closed
Matthewacon opened this issue Jun 22, 2019 · 0 comments
Closed

Transition away from the header-only library model #22

Matthewacon opened this issue Jun 22, 2019 · 0 comments
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@Matthewacon
Copy link
Member

fake-jni has grown too large to be a header-only library; compile times are taking much longer than a standard shared library, the header include dependency ordering is too complex to easily make changes to, and the user API is suffering from unclear multiple definition compile-time errors when incorrectly including fake-jni, due to the inline functions and members as part of the library. Furthermore, the startup time and memory complexity of fake-jni, as a header-only library, grows linearly with every translation unit that it is included in, once again, due to the statically allocated inline members and inline functions.

Transitioning to a standard shared library model will solve all of these issues as all statically allocated memory and inline functions will only be defined in a single translation unit, regardless of the include count.

@Matthewacon Matthewacon self-assigned this Sep 3, 2019
@Matthewacon Matthewacon added the enhancement New feature or request label Sep 3, 2019
@Matthewacon Matthewacon added this to the 0.1.0 milestone Sep 3, 2019
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

No branches or pull requests

1 participant