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::build
to 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