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

Rework IDeprecatable into IVersionableSymbol #221

Merged
merged 6 commits into from
Apr 30, 2024

Conversation

mhutch
Copy link
Owner

@mhutch mhutch commented Apr 30, 2024

Replace the IDeprecatable symbol interface with a new IVersionableSymbol interface, which allows symbols to contain information about the version in which the symbol was deprecated or introduced. We don't do anything with this info yet but having this mechanism means we can now start annotating symbols with this info in preparation for future use.

This info is stored on a SymbolVersionInfo object so it's easier to expand in future without touching every implementation of
the interface. This also means that the increased memory cost is paid only by the small number of versionable symbols that contain version info.

Symbols supporting this interface can now contain information
about the version that the symbol was deprecated or introduced.
We don't do anything with this info yet but having this
mechanism means we can now start annotating symbols with this
info in preparation for future use.

This info is stored on a SymbolVersionInfo object so it's easier
to expand in future without touching every implementation of
the interface. This also means that the increased memory cost is
paid only by the small number of versionable symbols that contain
version info.
@mhutch mhutch force-pushed the deprecated-and-introduced-in-version branch from aaf8a07 to db6d982 Compare April 30, 2024 06:22
@mhutch mhutch force-pushed the deprecated-and-introduced-in-version branch from db6d982 to 7f8b9e1 Compare April 30, 2024 06:46
@mhutch mhutch merged commit 3104707 into main Apr 30, 2024
1 check passed
@mhutch mhutch deleted the deprecated-and-introduced-in-version branch April 30, 2024 17:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant