use core::convert::TryFrom;
use url::Url;
use crate::HttpUrl;
use crate::error::Result;
impl From<HttpUrl> for Url {
fn from(http: HttpUrl) -> Self {
Url::parse(&http.to_url_string()).expect("HttpUrl should always produce a valid url::Url")
}
}
impl From<&HttpUrl> for Url {
fn from(http: &HttpUrl) -> Self {
Url::parse(&http.to_url_string()).expect("HttpUrl should always produce a valid url::Url")
}
}
impl TryFrom<Url> for HttpUrl {
type Error = crate::error::HttpUrlError;
fn try_from(url: Url) -> Result<Self> {
HttpUrl::parse(url.as_str())
}
}
impl TryFrom<&Url> for HttpUrl {
type Error = crate::error::HttpUrlError;
fn try_from(url: &Url) -> Result<Self> {
HttpUrl::parse(url.as_str())
}
}