pub struct RequestBuilder { /* private fields */ }Expand description
Builds a request.
let uri = Uri::sip(Host::Name(HostName::new("example.com")?));
let request = RequestBuilder::new(Method::Options, uri)
.header(HeaderName::CallId, "abc123@example.com")?
.max_forwards(70)
.build();Implementations§
Source§impl RequestBuilder
impl RequestBuilder
Sourcepub fn header(
self,
name: HeaderName,
value: impl Into<Bytes>,
) -> Result<Self, BuildError>
pub fn header( self, name: HeaderName, value: impl Into<Bytes>, ) -> Result<Self, BuildError>
Append a header, rejecting a value that could inject a line break.
Sourcepub fn set_header(
self,
name: &HeaderName,
value: impl Into<Bytes>,
) -> Result<Self, BuildError>
pub fn set_header( self, name: &HeaderName, value: impl Into<Bytes>, ) -> Result<Self, BuildError>
Replace every header of this name with one carrying this value.
Distinct from Self::header because appending is right for Via and Route, where
repetition is meaningful, and wrong for To or CSeq, where a second copy makes the
message invalid.
Sourcepub fn max_forwards(self, hops: u8) -> Self
pub fn max_forwards(self, hops: u8) -> Self
Append a Max-Forwards header. Cannot fail: a u8 has no CRLF in it.
Sourcepub fn cseq(self, sequence: u32, method: &Method) -> Result<Self, BuildError>
pub fn cseq(self, sequence: u32, method: &Method) -> Result<Self, BuildError>
Append a CSeq header.
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for RequestBuilder
impl RefUnwindSafe for RequestBuilder
impl Send for RequestBuilder
impl Sync for RequestBuilder
impl Unpin for RequestBuilder
impl UnsafeUnpin for RequestBuilder
impl UnwindSafe for RequestBuilder
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more