Trait FormField

Source
pub trait FormField<El>: Sized {
    type Config: Clone + Default + 'static;
    type Signal: Clone + 'static;

    // Required methods
    fn default_signal(
        config: &Self::Config,
        initial: Option<Self>,
    ) -> Self::Signal;
    fn is_initial_value(signal: &Self::Signal) -> bool;
    fn into_signal(
        self,
        config: &Self::Config,
        initial: Option<Self>,
    ) -> Self::Signal;
    fn try_from_signal(
        signal: Self::Signal,
        config: &Self::Config,
    ) -> Result<Self, FormError>;
    fn recurse(signal: &Self::Signal);
    fn reset_initial_value(signal: &Self::Signal);

    // Provided methods
    fn validate(_: Self::Signal) -> Result<(), FormError> { ... }
    fn with_error<O>(
        signal: &Self::Signal,
        f: impl FnOnce(Option<&FormError>) -> O,
    ) -> O { ... }
}

Required Associated Types§

Source

type Config: Clone + Default + 'static

A configuration type which is used for mapping between Self and the underlying value of Self::Signal.

Source

type Signal: Clone + 'static

A RwSignal or wrapper type containing RwSignals which contains the underlying form value.

Required Methods§

Source

fn default_signal(config: &Self::Config, initial: Option<Self>) -> Self::Signal

Source

fn is_initial_value(signal: &Self::Signal) -> bool

Source

fn into_signal( self, config: &Self::Config, initial: Option<Self>, ) -> Self::Signal

Source

fn try_from_signal( signal: Self::Signal, config: &Self::Config, ) -> Result<Self, FormError>

Source

fn recurse(signal: &Self::Signal)

Source

fn reset_initial_value(signal: &Self::Signal)

Provided Methods§

Source

fn validate(_: Self::Signal) -> Result<(), FormError>

Source

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl FormField<HtmlElement<Input>> for Cow<'_, str>

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Input>> for Oco<'static, str>

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Input>> for f32

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Input>> for f64

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Input>> for i8

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Input>> for i16

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Input>> for i32

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Input>> for i64

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Input>> for i128

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Input>> for isize

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Input>> for u8

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Input>> for u16

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Input>> for u32

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Input>> for u64

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Input>> for u128

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Input>> for usize

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Input>> for String

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Input>> for BigDecimal

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Input>> for DateTime<FixedOffset>

Available on crate feature chrono only.
Source§

type Config = FixedOffsetDateTimeConfig

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(config: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal( self, config: &Self::Config, initial: Option<Self>, ) -> Self::Signal

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

fn try_from_signal( signal: Self::Signal, config: &Self::Config, ) -> Result<Self, FormError>

Source§

impl FormField<HtmlElement<Input>> for DateTime<Local>

Available on crate feature chrono only.
Source§

type Config = LocalDateTimeConfig

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(config: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal( self, config: &Self::Config, initial: Option<Self>, ) -> Self::Signal

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

fn try_from_signal( signal: Self::Signal, config: &Self::Config, ) -> Result<Self, FormError>

Source§

impl FormField<HtmlElement<Input>> for DateTime<Utc>

Available on crate feature chrono only.
Source§

type Config = UtcDateTimeConfig

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(config: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal( self, config: &Self::Config, initial: Option<Self>, ) -> Self::Signal

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

fn try_from_signal( signal: Self::Signal, config: &Self::Config, ) -> Result<Self, FormError>

Source§

impl FormField<HtmlElement<Input>> for NaiveDate

Available on crate feature chrono only.
Source§

type Config = NaiveDateConfig

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(config: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal( self, config: &Self::Config, initial: Option<Self>, ) -> Self::Signal

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

fn try_from_signal( signal: Self::Signal, config: &Self::Config, ) -> Result<Self, FormError>

Source§

impl FormField<HtmlElement<Input>> for NaiveDateTime

Available on crate feature chrono only.
Source§

type Config = NaiveDateTimeConfig

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(config: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal( self, config: &Self::Config, initial: Option<Self>, ) -> Self::Signal

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

fn try_from_signal( signal: Self::Signal, config: &Self::Config, ) -> Result<Self, FormError>

Source§

impl FormField<HtmlElement<Input>> for BigInt

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Input>> for BigUint

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Input>> for Uuid

Available on crate feature uuid only.
Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(config: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Textarea>> for Cow<'_, str>

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Textarea>> for Oco<'static, str>

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl FormField<HtmlElement<Textarea>> for String

Source§

type Config = ()

Source§

type Signal = FormFieldSignal<String>

Source§

fn default_signal(_: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal(self, _: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, _: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Source§

impl<T, El> FormField<Vec<El>> for Vec<T>
where T: Clone + FormField<El>, <T as FormField<El>>::Signal: Clone + Debug,

Source§

type Config = VecConfig<<T as FormField<El>>::Config>

Source§

type Signal = FormFieldSignal<IndexMap<usize, VecSignalItem<<T as FormField<El>>::Signal>>>

Source§

fn default_signal(config: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal( self, config: &Self::Config, initial: Option<Self>, ) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, config: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn with_error<O>(_: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O) -> O

Source§

impl<T, El> FormField<El> for Option<T>
where T: FormField<El>,

Source§

type Config = <T as FormField<El>>::Config

Source§

type Signal = <T as FormField<El>>::Signal

Source§

fn default_signal(config: &Self::Config, initial: Option<Self>) -> Self::Signal

Source§

fn is_initial_value(signal: &Self::Signal) -> bool

Source§

fn into_signal( self, config: &Self::Config, initial: Option<Self>, ) -> Self::Signal

Source§

fn try_from_signal( signal: Self::Signal, config: &Self::Config, ) -> Result<Self, FormError>

Source§

fn recurse(signal: &Self::Signal)

Source§

fn reset_initial_value(signal: &Self::Signal)

Source§

fn validate(signal: Self::Signal) -> Result<(), FormError>

Source§

fn with_error<O>( signal: &Self::Signal, f: impl FnOnce(Option<&FormError>) -> O, ) -> O

Implementors§