URI: how to distinguish from invalid port vs no port number
Hey,
I read that default port was rejected in https://github.com/hyperium/http/issues/11.
However, the current API has pub fn port(&self) -> Option<Port<&str>> but it's not possible to
distinguish when invalid port number vs when no port number.
.
Example:
let uri: Uri = "/hello/world".parse().unwrap();
assert!(uri.port().is_none());
let uri: Uri = "/hello/world:-9933".parse().unwrap();
assert!(uri.port().is_none());
Opinions about having pub fn port(&self) -> Result<Option<Port<&str>, Error> or something similar?
What is the rationale for not returning an error on invalid port numbers?
It probably should return an error when the Uri/Authority itself is parsed, not when calling the accessor.
It probably should return an error when the Uri/Authority itself is parsed, not when calling the accessor.
That is what I meant