[][src]Struct es_htmlform::Field

pub struct Field<'a> { /* fields omitted */ }

Represents a form field/element.

A Field can convert itself to JSON (and other formats, using serde) and can perform validation of its Values based on its Constraints. Note that the value field always contains a Vec of Values, close to how HTML url encoding works (where every key can appear more than once and every value is a string, or optional).

Methods

impl<'a> Field<'a>[src]

pub fn new(
    name: &'a str,
    label: &'a str,
    element: Element,
    required: bool,
    values: Option<Vec<Value>>,
    choices: &'a [(&'a str, &'a str)],
    constraints: Vec<Constraint<'a>>,
    attributes: Vec<Attr<'a>>
) -> Field<'a>
[src]

Initialize a Field.

It is advised to use the builder-style methods on HtmlForm to instantiate, since those perform additional checks and prepare arguments.

pub fn values(&self) -> Vec<Value>[src]

Returns a Vec of 0 or more non-empty values from self.values.

pub fn validate(&self, values: &[&Value]) -> Result<(), ValidationError>[src]

Validate a set of values

Note that this assumes values contains the correct amount of non-empty values for this Field, so dealing with errors regarding self.required and amount of values should be done before this method is called.

Generally, this method is not called directly, but indirectly by HtmlForm's update().

pub fn empty(&mut self)[src]

Clear the Field's values.

pub fn set_values(&mut self, values: Vec<&Value>)[src]

Set the Field's values.

Trait Implementations

impl<'a> Debug for Field<'a>[src]

impl<'a> Serialize for Field<'a>[src]

Auto Trait Implementations

impl<'a> !Send for Field<'a>

impl<'a> !Sync for Field<'a>

impl<'a> Unpin for Field<'a>

impl<'a> !UnwindSafe for Field<'a>

impl<'a> !RefUnwindSafe for Field<'a>

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]