use reqwest::{Client, Request, RequestBuilder, Response}; use Result; pub trait HttpSend { fn execute(&self, client: &Client, request: Request) -> Result; fn send(&self, client: &Client, builder: &mut RequestBuilder) -> Result { let request = builder.build()?; self.execute(client, request) } } pub struct HttpSender; impl HttpSend for HttpSender { fn execute(&self, client: &Client, request: Request) -> Result { Ok(client.execute(request)?) } }