Library registration for service location #42
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
For libraries that want to base themselves on Splat's service locator, making sure your types are registered properly is annoyingly difficult, and ends up pushing the problem to the user, where today, if you set the locator in your app with RxUI and Akavache, you now have to run:
Instead, this PR adds a way for libraries to get called back when they have a new resolver to set up:
You'd call this in either a static constructor of your library (if you can), or in a Module Initializer if you really want to be sure.