43 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Rust
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Rust
		
	
	
	
	
	
| //! Default runtime
 | |
| //!
 | |
| //! By default, hyper includes the [tokio](https://tokio.rs) runtime. To ease
 | |
| //! using it, several types are re-exported here.
 | |
| //!
 | |
| //! The inclusion of a default runtime can be disabled by turning off hyper's
 | |
| //! `runtime` Cargo feature.
 | |
| 
 | |
| pub use std::future::Future;
 | |
| pub use futures_core::Stream;
 | |
| 
 | |
| use self::inner::Spawn;
 | |
| 
 | |
| /// Spawns a future on the default executor.
 | |
| ///
 | |
| /// # Panics
 | |
| ///
 | |
| /// This function will panic if the default executor is not set.
 | |
| ///
 | |
| /// # Note
 | |
| ///
 | |
| /// The `Spawn` return type is not currently meant for anything other than
 | |
| /// to reserve adding new trait implementations to it later. It can be
 | |
| /// ignored for now.
 | |
| pub fn spawn<F>(f: F) -> Spawn
 | |
| where
 | |
|     F: Future<Output = ()> + Send + 'static,
 | |
| {
 | |
|     tokio::spawn(f);
 | |
|     Spawn {
 | |
|         _inner: (),
 | |
|     }
 | |
| }
 | |
| 
 | |
| // Make the `Spawn` type an unnameable, so we can add
 | |
| // methods or trait impls to it later without a breaking change.
 | |
| mod inner {
 | |
|     #[allow(missing_debug_implementations)]
 | |
|     pub struct Spawn {
 | |
|         pub(super) _inner: (),
 | |
|     }
 | |
| }
 |