Add GitOid::new_from_url and TryFrom.
#33
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.
This commit adds the ability to try to construct a
GitOidfrom aurl::Urlby parsing the parts of theUrlto ensure they contain all the required data, and then constructing aGitOidif they do.This includes additions to enable parsing
ObjectTypeandHashAlgorithmfrom a string slice, plus new error variants (with eitherStringorBox<Url>fields) to represent different modes of failure for parsing.This commit also renames
GitOid::uritoGitOid::url.The new name is a more-specific explanation of what we're dealing with, and matches the type returned (
url::Url). This change also makesGitOid::urlconsistent withGitOid::new_from_url. I also added new tests to validate that the correct errors are produced for different types of invalidUrls.Signed-off-by: Andrew Lilley Brinker alilleybrinker@gmail.com