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.
This PR implements the Snowflake limitations described in discord/discord-api-docs#3745.
The valid range for a
Snowflake
's raw value is represented by the newvalidULongRange
property ofSnowflake
's companion object. All constructors will coerce their input in that range so there is no way to create an invalidSnowflake
.If Discord ever decides to widen the valid range, it would just be a matter of adjusting the
validULongRange
accordingly to support that. (I intended this range to be the single point of truth).b96f3bb removes a test that was depending on an invalid
Snowflake
to pass. Since there is no longer a way to create such invalidSnowflake
s, it was impossible to make this test pass.This PR should be merged after #381 as it reverts (46c7462) the changes made there and replaces them with a more permanent solution.
I would also want to keep this PR open until discord/discord-api-docs#3745 gets accepted.