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.
Adds a trait which notably does not depend on the
arithmetic
feature which allows associating a constant for the curve's order with a particular curve type.Since it stores the curve type as a constant, it's not possible to use
GenericArray
, so instead it has each curve specify aLimbs
type which is used as the type for anORDER
constant.The longer-term goal will be to merge this with the
Curve
trait, ensuring that every curve implementation has a known order regardless of whether it provides an arithmetic backend or not.This can be used as the foundation for making certain functionality generic across curve implementations at a baseline, such as checking if scalars are in-range, and as such can simplify things which are presently conditionally defined based on the presence or absence of an arithmetic backend.