hermes_tokio_runtime_components/components/
concurrent.rs1use cgp::prelude::*;
2use hermes_async_runtime_components::task::impls::concurrent::RunConcurrentTasks;
3pub use hermes_runtime_components::traits::channel::{
4 ChannelCreatorComponent, ChannelTypeComponent, ChannelUserComponent, ReceiverStreamerComponent,
5 SenderClonerComponent,
6};
7pub use hermes_runtime_components::traits::channel_once::{
8 ChannelOnceCreatorComponent, ChannelOnceTypeComponent, ChannelOnceUserComponent,
9};
10pub use hermes_runtime_components::traits::fs::copy_file::FileCopierComponent;
11pub use hermes_runtime_components::traits::fs::create_dir::DirCreatorComponent;
12pub use hermes_runtime_components::traits::fs::file_path::FilePathTypeComponent;
13pub use hermes_runtime_components::traits::fs::read_file::FileAsStringReaderComponent;
14pub use hermes_runtime_components::traits::fs::write_file::StringToFileWriterComponent;
15pub use hermes_runtime_components::traits::mutex::MutexComponent;
16pub use hermes_runtime_components::traits::os::child_process::{
17 ChildProcessStarterComponent, ChildProcessTypeComponent, ChildProcessWaiterComponent,
18};
19pub use hermes_runtime_components::traits::os::exec_command::{
20 CommandExecutorComponent, CommandWithEnvsExecutorComponent,
21};
22pub use hermes_runtime_components::traits::os::reserve_port::TcpPortReserverComponent;
23pub use hermes_runtime_components::traits::random::RandomGeneratorComponent;
24pub use hermes_runtime_components::traits::sleep::SleeperComponent;
25pub use hermes_runtime_components::traits::spawn::TaskSpawnerComponent;
26pub use hermes_runtime_components::traits::stream::{StreamMapperComponent, StreamTypeComponent};
27pub use hermes_runtime_components::traits::subscription::SubscriptionComponent;
28pub use hermes_runtime_components::traits::task::ConcurrentTaskRunnerComponent;
29pub use hermes_runtime_components::traits::time::TimeComponent;
30
31use crate::components::parallel::TokioParallelRuntimeComponents;
32
33define_components! {
34 TokioConcurrentRuntimeComponents {
35 ConcurrentTaskRunnerComponent: RunConcurrentTasks,
36 [
37 SleeperComponent,
38 TimeComponent,
39 MutexComponent,
40 StreamTypeComponent,
41 StreamMapperComponent,
42 SubscriptionComponent,
43 TaskSpawnerComponent,
44 ChannelTypeComponent,
45 ChannelCreatorComponent,
46 ChannelUserComponent,
47 ChannelOnceTypeComponent,
48 ChannelOnceCreatorComponent,
49 ChannelOnceUserComponent,
50 ReceiverStreamerComponent,
51 SenderClonerComponent,
52 FilePathTypeComponent,
53 ChildProcessTypeComponent,
54 ChildProcessStarterComponent,
55 ChildProcessWaiterComponent,
56 FileAsStringReaderComponent,
57 DirCreatorComponent,
58 FileCopierComponent,
59 CommandExecutorComponent,
60 CommandWithEnvsExecutorComponent,
61 StringToFileWriterComponent,
62 TcpPortReserverComponent,
63 RandomGeneratorComponent,
64 ]:
65 TokioParallelRuntimeComponents,
66 }
67}