 694c06f3d0
			
		
	
	
		694c06f3d0
		
			
		
	
	
	
	
		
			
			# Objective Currently the `missing_docs` lint is allowed-by-default and enabled at crate level when their documentations is complete (see #3492). This PR proposes to inverse this logic by making `missing_docs` warn-by-default and mark crates with imcomplete docs allowed. ## Solution Makes `missing_docs` warn at workspace level and allowed at crate level when the docs is imcomplete.
		
			
				
	
	
		
			63 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Rust
		
	
	
	
	
	
			
		
		
	
	
			63 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Rust
		
	
	
	
	
	
| #![doc = include_str!("../README.md")]
 | |
| 
 | |
| mod slice;
 | |
| pub use slice::{ParallelSlice, ParallelSliceMut};
 | |
| 
 | |
| mod task;
 | |
| pub use task::Task;
 | |
| 
 | |
| #[cfg(all(not(target_arch = "wasm32"), feature = "multi-threaded"))]
 | |
| mod task_pool;
 | |
| #[cfg(all(not(target_arch = "wasm32"), feature = "multi-threaded"))]
 | |
| pub use task_pool::{Scope, TaskPool, TaskPoolBuilder};
 | |
| 
 | |
| #[cfg(any(target_arch = "wasm32", not(feature = "multi-threaded")))]
 | |
| mod single_threaded_task_pool;
 | |
| #[cfg(any(target_arch = "wasm32", not(feature = "multi-threaded")))]
 | |
| pub use single_threaded_task_pool::{FakeTask, Scope, TaskPool, TaskPoolBuilder, ThreadExecutor};
 | |
| 
 | |
| mod usages;
 | |
| #[cfg(not(target_arch = "wasm32"))]
 | |
| pub use usages::tick_global_task_pools_on_main_thread;
 | |
| pub use usages::{AsyncComputeTaskPool, ComputeTaskPool, IoTaskPool};
 | |
| 
 | |
| #[cfg(all(not(target_arch = "wasm32"), feature = "multi-threaded"))]
 | |
| mod thread_executor;
 | |
| #[cfg(all(not(target_arch = "wasm32"), feature = "multi-threaded"))]
 | |
| pub use thread_executor::{ThreadExecutor, ThreadExecutorTicker};
 | |
| 
 | |
| #[cfg(feature = "async-io")]
 | |
| pub use async_io::block_on;
 | |
| #[cfg(not(feature = "async-io"))]
 | |
| pub use futures_lite::future::block_on;
 | |
| 
 | |
| mod iter;
 | |
| pub use iter::ParallelIterator;
 | |
| 
 | |
| pub use futures_lite;
 | |
| 
 | |
| #[allow(missing_docs)]
 | |
| pub mod prelude {
 | |
|     #[doc(hidden)]
 | |
|     pub use crate::{
 | |
|         block_on,
 | |
|         iter::ParallelIterator,
 | |
|         slice::{ParallelSlice, ParallelSliceMut},
 | |
|         usages::{AsyncComputeTaskPool, ComputeTaskPool, IoTaskPool},
 | |
|     };
 | |
| }
 | |
| 
 | |
| use std::num::NonZeroUsize;
 | |
| 
 | |
| /// Gets the logical CPU core count available to the current process.
 | |
| ///
 | |
| /// This is identical to [`std::thread::available_parallelism`], except
 | |
| /// it will return a default value of 1 if it internally errors out.
 | |
| ///
 | |
| /// This will always return at least 1.
 | |
| pub fn available_parallelism() -> usize {
 | |
|     std::thread::available_parallelism()
 | |
|         .map(NonZeroUsize::get)
 | |
|         .unwrap_or(1)
 | |
| }
 |