[codegen] Make #[available] not accept expressions #180
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.
Further work on making us schema-ready. Previously this attribute accepted any expression that evaluated to something which implemented the 'Comparable' trait, for the appropriate version type. In practice, this was so that we could provide both literal integers as well as named constants, such as
MajorMinor::VERSION_1_1
.The schema will not support the concept of an arbitrary expression, however, and so this needs a more constrained representation.
With this patch, we no longer support the use of named constants in this attribute; instead the argument must be either a single integer literal, or a comma-separated major/minor pair of literal integers, which we will convert to the appropriate type when comparing.