use nostr::url::{ParseError, Url};
pub trait TryIntoUrl {
type Err;
fn try_into_url(&self) -> Result<Url, Self::Err>;
}
impl TryIntoUrl for Url {
type Err = ParseError;
fn try_into_url(&self) -> Result<Url, Self::Err> {
Ok(self.clone())
}
}
impl TryIntoUrl for &Url {
type Err = ParseError;
fn try_into_url(&self) -> Result<Url, Self::Err> {
Ok(<&Url>::clone(self).clone())
}
}
impl TryIntoUrl for String {
type Err = ParseError;
fn try_into_url(&self) -> Result<Url, Self::Err> {
Url::parse(self)
}
}
impl TryIntoUrl for &str {
type Err = ParseError;
fn try_into_url(&self) -> Result<Url, Self::Err> {
Url::parse(self)
}
}