Struct RequestBuilder

Source
pub struct RequestBuilder { /* private fields */ }
Expand description

A builder for a WebFinger request.

This is used to construct a Request for a WebFinger query.

§Examples

use webfinger_rs::WebFingerRequest;

let query = WebFingerRequest::builder("acct:carol@example.com")?
    .host("example.com")
    .rel("http://webfinger.net/rel/profile-page")
    .build();

Implementations§

Source§

impl Builder

Source

pub fn new<U>(uri: U) -> Result<Self, Error>
where Uri: TryFrom<U>, <Uri as TryFrom<U>>::Error: Into<Error>,

Creates a new WebFinger request builder.

This will use the given URI as the resource for the query.

§Errors

This will return an error if the URI is invalid.

Source

pub fn host<S: Into<String>>(self, host: S) -> Self

Sets the host for the query.

Examples found in repository?
examples/client.rs (line 6)
4async fn main() -> Result<(), Box<dyn std::error::Error>> {
5    let request = WebFingerRequest::builder("acct:carol@example.com")?
6        .host("example.com")
7        .rel("http://webfinger.net/rel/profile-page")
8        .build();
9    let response = request.execute_reqwest().await?;
10    dbg!(response);
11    Ok(())
12}
Source

pub fn rel<R: Into<Rel>>(self, rel: R) -> Self

Adds a link relation type to the query.

§Examples
use webfinger_rs::WebFingerRequest;

let query = WebFingerRequest::builder("acct:carol@example.com")?
    .rel("http://webfinger.net/rel/profile-page")
    .build();
Examples found in repository?
examples/client.rs (line 7)
4async fn main() -> Result<(), Box<dyn std::error::Error>> {
5    let request = WebFingerRequest::builder("acct:carol@example.com")?
6        .host("example.com")
7        .rel("http://webfinger.net/rel/profile-page")
8        .build();
9    let response = request.execute_reqwest().await?;
10    dbg!(response);
11    Ok(())
12}
Source

pub fn build(self) -> Request

Builds the WebFinger request.

Examples found in repository?
examples/client.rs (line 8)
4async fn main() -> Result<(), Box<dyn std::error::Error>> {
5    let request = WebFingerRequest::builder("acct:carol@example.com")?
6        .host("example.com")
7        .rel("http://webfinger.net/rel/profile-page")
8        .build();
9    let response = request.execute_reqwest().await?;
10    dbg!(response);
11    Ok(())
12}

Trait Implementations§

Source§

impl Debug for Builder

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into<'async_trait>( self, ) -> Pin<Box<dyn Future<Output = Result<U, <U as TryFrom<T>>::Error>> + 'async_trait>>
where T: 'async_trait,

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,