|  |  |  | @ -183,6 +183,53 @@ impl<'a, H: HttpSend> Registration<'a, H> { | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | impl Registered<HttpSender> { | 
			
		
	
		
			
				
					|  |  |  |  |     /// Skip having to retrieve the client id and secret from the server by
 | 
			
		
	
		
			
				
					|  |  |  |  |     /// creating a `Registered` struct directly
 | 
			
		
	
		
			
				
					|  |  |  |  |     ///
 | 
			
		
	
		
			
				
					|  |  |  |  |     /// # Example
 | 
			
		
	
		
			
				
					|  |  |  |  |     ///
 | 
			
		
	
		
			
				
					|  |  |  |  |     /// ```no_run
 | 
			
		
	
		
			
				
					|  |  |  |  |     /// # extern crate elefren;
 | 
			
		
	
		
			
				
					|  |  |  |  |     /// # fn main() -> elefren::Result<()> {
 | 
			
		
	
		
			
				
					|  |  |  |  |     /// use elefren::{prelude::*, registration::Registered};
 | 
			
		
	
		
			
				
					|  |  |  |  |     ///
 | 
			
		
	
		
			
				
					|  |  |  |  |     /// let registration = Registered::from_parts(
 | 
			
		
	
		
			
				
					|  |  |  |  |     ///     "https://example.com",
 | 
			
		
	
		
			
				
					|  |  |  |  |     ///     "the-client-id",
 | 
			
		
	
		
			
				
					|  |  |  |  |     ///     "the-client-secret",
 | 
			
		
	
		
			
				
					|  |  |  |  |     ///     "https://example.com/redirect",
 | 
			
		
	
		
			
				
					|  |  |  |  |     ///     Scopes::read_all(),
 | 
			
		
	
		
			
				
					|  |  |  |  |     /// );
 | 
			
		
	
		
			
				
					|  |  |  |  |     /// let url = registration.authorize_url()?;
 | 
			
		
	
		
			
				
					|  |  |  |  |     /// // Here you now need to open the url in the browser
 | 
			
		
	
		
			
				
					|  |  |  |  |     /// // And handle a the redirect url coming back with the code.
 | 
			
		
	
		
			
				
					|  |  |  |  |     /// let code = String::from("RETURNED_FROM_BROWSER");
 | 
			
		
	
		
			
				
					|  |  |  |  |     /// let mastodon = registration.complete(&code)?;
 | 
			
		
	
		
			
				
					|  |  |  |  |     ///
 | 
			
		
	
		
			
				
					|  |  |  |  |     /// println!("{:?}", mastodon.get_home_timeline()?.initial_items);
 | 
			
		
	
		
			
				
					|  |  |  |  |     /// #   Ok(())
 | 
			
		
	
		
			
				
					|  |  |  |  |     /// # }
 | 
			
		
	
		
			
				
					|  |  |  |  |     /// ```
 | 
			
		
	
		
			
				
					|  |  |  |  |     pub fn from_parts( | 
			
		
	
		
			
				
					|  |  |  |  |         base: &str, | 
			
		
	
		
			
				
					|  |  |  |  |         client_id: &str, | 
			
		
	
		
			
				
					|  |  |  |  |         client_secret: &str, | 
			
		
	
		
			
				
					|  |  |  |  |         redirect: &str, | 
			
		
	
		
			
				
					|  |  |  |  |         scopes: Scopes, | 
			
		
	
		
			
				
					|  |  |  |  |     ) -> Registered<HttpSender> { | 
			
		
	
		
			
				
					|  |  |  |  |         Registered { | 
			
		
	
		
			
				
					|  |  |  |  |             base: base.to_string(), | 
			
		
	
		
			
				
					|  |  |  |  |             client: Client::new(), | 
			
		
	
		
			
				
					|  |  |  |  |             client_id: client_id.to_string(), | 
			
		
	
		
			
				
					|  |  |  |  |             client_secret: client_secret.to_string(), | 
			
		
	
		
			
				
					|  |  |  |  |             redirect: redirect.to_string(), | 
			
		
	
		
			
				
					|  |  |  |  |             scopes, | 
			
		
	
		
			
				
					|  |  |  |  |             http_sender: HttpSender, | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | impl<H: HttpSend> Registered<H> { | 
			
		
	
		
			
				
					|  |  |  |  |     fn send(&self, req: RequestBuilder) -> Result<Response> { | 
			
		
	
		
			
				
					|  |  |  |  |         Ok(self.http_sender.send(&self.client, req)?) | 
			
		
	
	
		
			
				
					|  |  |  | 
 |