use crate::prelude::{FromPatch, IsPrimitive};
pub const trait TryIntoPatch<T>: Sized {
#[must_use]
fn try_into_value(self) -> Option<T>;
}
impl<T: Sized + TryFromPatch<O>, O> TryIntoPatch<T> for O {
fn try_into_value(self) -> Option<T> {
T::try_from_value(self)
}
}
pub const trait TryFromPatch<T>: Sized {
#[must_use]
fn try_from_value(value: T) -> Option<Self>;
}
impl<T: FromPatch<V> + IsPrimitive, V> TryFromPatch<V> for T {
fn try_from_value(value: V) -> Option<Self> {
Some(T::from_value(value))
}
}
#[cfg(feature = "std")]
mod map;
mod numbers;
#[cfg(feature = "std")]
mod string;
#[cfg(feature = "std")]
mod vec;