[][src]Struct rocket::request::FormItem

pub struct FormItem<'f> {
    pub raw: &'f RawStr,
    pub key: &'f RawStr,
    pub value: &'f RawStr,
}

A form items returned by the FormItems iterator.

Fields

raw: &'f RawStr

The full, nonempty string for the item, not including & delimiters.

key: &'f RawStr

The key for the item, which may be empty if value is nonempty.

Note: The key is not URL decoded. To URL decode the raw strings, use the RawStr::url_decode() method or access key-value pairs with key_value_decoded().

value: &'f RawStr

The value for the item, which may be empty if key is nonempty.

Note: The value is not URL decoded. To URL decode the raw strings, use the RawStr::url_decode() method or access key-value pairs with key_value_decoded().

Methods

impl<'f> FormItem<'f>[src]

pub fn key_value(&self) -> (&'f RawStr, &'f RawStr)[src]

Extracts the raw key and value as a tuple.

This is equivalent to (item.key, item.value).

Example

use rocket::request::FormItem;

let item = FormItem {
    raw: "hello=%2C+world%21".into(),
    key: "hello".into(),
    value: "%2C+world%21".into(),
};

let (key, value) = item.key_value();
assert_eq!(key, "hello");
assert_eq!(value, "%2C+world%21");

pub fn key_value_decoded(&self) -> (String, String)[src]

Extracts and lossy URL decodes the key and value as a tuple.

This is equivalent to (item.key.url_decode_lossy(), item.value.url_decode_lossy).

Example

use rocket::request::FormItem;

let item = FormItem {
    raw: "hello=%2C+world%21".into(),
    key: "hello".into(),
    value: "%2C+world%21".into(),
};

let (key, value) = item.key_value_decoded();
assert_eq!(key, "hello");
assert_eq!(value, ", world!");

pub fn explode(&self) -> (&'f RawStr, &'f RawStr, &'f RawStr)[src]

Extracts raw and the raw key and value as a triple.

This is equivalent to (item.raw, item.key, item.value).

Example

use rocket::request::FormItem;

let item = FormItem {
    raw: "hello=%2C+world%21".into(),
    key: "hello".into(),
    value: "%2C+world%21".into(),
};

let (raw, key, value) = item.explode();
assert_eq!(raw, "hello=%2C+world%21");
assert_eq!(key, "hello");
assert_eq!(value, "%2C+world%21");

Trait Implementations

impl<'f> PartialEq<FormItem<'f>> for FormItem<'f>[src]

impl<'f> Copy for FormItem<'f>[src]

impl<'f> Eq for FormItem<'f>[src]

impl<'f> Clone for FormItem<'f>[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl<'f> Debug for FormItem<'f>[src]

Auto Trait Implementations

impl<'f> Send for FormItem<'f>

impl<'f> Unpin for FormItem<'f>

impl<'f> Sync for FormItem<'f>

impl<'f> UnwindSafe for FormItem<'f>

impl<'f> RefUnwindSafe for FormItem<'f>

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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

impl<T, U> Into<U> for T where
    U: From<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> BorrowMut<T> for T where
    T: ?Sized
[src]

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

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

impl<T> Typeable for T where
    T: Any

fn get_type(&self) -> TypeId

Get the TypeId of this object.

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

impl<T, I> AsResult<T, I> for T where
    I: Input
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]