Struct cookie::CookieBuilder
source · [−]pub struct CookieBuilder { /* private fields */ }Expand description
Structure that follows the builder pattern for building Cookie structs.
To construct a cookie:
- Call
Cookie::buildto start building. - Use any of the builder methods to set fields in the cookie.
- Call finish to retrieve the built cookie.
Example
extern crate time;
use cookie::Cookie;
use time::Duration;
let cookie: Cookie = Cookie::build("name", "value")
.domain("www.rust-lang.org")
.path("/")
.secure(true)
.http_only(true)
.max_age(Duration::days(1))
.finish();Implementations
sourceimpl CookieBuilder
impl CookieBuilder
sourcepub fn new<N, V>(name: N, value: V) -> CookieBuilder where
N: Into<Cow<'static, str>>,
V: Into<Cow<'static, str>>,
pub fn new<N, V>(name: N, value: V) -> CookieBuilder where
N: Into<Cow<'static, str>>,
V: Into<Cow<'static, str>>,
Creates a new CookieBuilder instance from the given name and value.
This method is typically called indirectly via Cookie::build.
Example
use cookie::Cookie;
let c = Cookie::build("foo", "bar").finish();
assert_eq!(c.name_value(), ("foo", "bar"));sourcepub fn expires(self, when: Tm) -> CookieBuilder
pub fn expires(self, when: Tm) -> CookieBuilder
Sets the expires field in the cookie being built.
Example
extern crate time;
use cookie::Cookie;
let c = Cookie::build("foo", "bar")
.expires(time::now())
.finish();
assert!(c.expires().is_some());sourcepub fn max_age(self, value: Duration) -> CookieBuilder
pub fn max_age(self, value: Duration) -> CookieBuilder
Sets the max_age field in the cookie being built.
Example
extern crate time;
use time::Duration;
use cookie::Cookie;
let c = Cookie::build("foo", "bar")
.max_age(Duration::minutes(30))
.finish();
assert_eq!(c.max_age(), Some(Duration::seconds(30 * 60)));sourcepub fn domain<D: Into<Cow<'static, str>>>(self, value: D) -> CookieBuilder
pub fn domain<D: Into<Cow<'static, str>>>(self, value: D) -> CookieBuilder
Sets the domain field in the cookie being built.
Example
use cookie::Cookie;
let c = Cookie::build("foo", "bar")
.domain("www.rust-lang.org")
.finish();
assert_eq!(c.domain(), Some("www.rust-lang.org"));sourcepub fn path<P: Into<Cow<'static, str>>>(self, path: P) -> CookieBuilder
pub fn path<P: Into<Cow<'static, str>>>(self, path: P) -> CookieBuilder
Sets the path field in the cookie being built.
Example
use cookie::Cookie;
let c = Cookie::build("foo", "bar")
.path("/")
.finish();
assert_eq!(c.path(), Some("/"));sourcepub fn secure(self, value: bool) -> CookieBuilder
pub fn secure(self, value: bool) -> CookieBuilder
Sets the secure field in the cookie being built.
Example
use cookie::Cookie;
let c = Cookie::build("foo", "bar")
.secure(true)
.finish();
assert_eq!(c.secure(), Some(true));sourcepub fn http_only(self, value: bool) -> CookieBuilder
pub fn http_only(self, value: bool) -> CookieBuilder
Sets the http_only field in the cookie being built.
Example
use cookie::Cookie;
let c = Cookie::build("foo", "bar")
.http_only(true)
.finish();
assert_eq!(c.http_only(), Some(true));sourcepub fn same_site(self, value: SameSite) -> CookieBuilder
pub fn same_site(self, value: SameSite) -> CookieBuilder
Sets the same_site field in the cookie being built.
Example
use cookie::{Cookie, SameSite};
let c = Cookie::build("foo", "bar")
.same_site(SameSite::Strict)
.finish();
assert_eq!(c.same_site(), Some(SameSite::Strict));sourcepub fn permanent(self) -> CookieBuilder
pub fn permanent(self) -> CookieBuilder
Makes the cookie being built ‘permanent’ by extending its expiration and max age 20 years into the future.
Example
extern crate time;
use cookie::Cookie;
use time::Duration;
let c = Cookie::build("foo", "bar")
.permanent()
.finish();
assert_eq!(c.max_age(), Some(Duration::days(365 * 20)));sourcepub fn finish(self) -> Cookie<'static>
pub fn finish(self) -> Cookie<'static>
Finishes building and returns the built Cookie.
Example
use cookie::Cookie;
let c = Cookie::build("foo", "bar")
.domain("crates.io")
.path("/")
.finish();
assert_eq!(c.name_value(), ("foo", "bar"));
assert_eq!(c.domain(), Some("crates.io"));
assert_eq!(c.path(), Some("/"));Trait Implementations
sourceimpl Clone for CookieBuilder
impl Clone for CookieBuilder
sourcefn clone(&self) -> CookieBuilder
fn clone(&self) -> CookieBuilder
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read more
Auto Trait Implementations
impl RefUnwindSafe for CookieBuilder
impl Send for CookieBuilder
impl Sync for CookieBuilder
impl Unpin for CookieBuilder
impl UnwindSafe for CookieBuilder
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into)Uses borrowed data to replace owned data, usually by cloning. Read more