Skip to main content

qubit_execution_services/
lib.rs

1/*******************************************************************************
2 *
3 *    Copyright (c) 2025 - 2026 Haixing Hu.
4 *
5 *    SPDX-License-Identifier: Apache-2.0
6 *
7 *    Licensed under the Apache License, Version 2.0.
8 *
9 ******************************************************************************/
10//! # Qubit Execution Services
11//!
12//! Aggregated execution services facade for blocking, CPU-bound, Tokio blocking,
13//! and async IO tasks.
14//!
15
16mod execution_services;
17mod execution_services_build_error;
18mod execution_services_builder;
19mod execution_services_stop_report;
20
21pub use execution_services::{
22    BlockingExecutorService,
23    BlockingExecutorServiceBuilder,
24    ExecutionServices,
25    TokioBlockingExecutorService,
26};
27pub use execution_services_build_error::ExecutionServicesBuildError;
28pub use execution_services_builder::ExecutionServicesBuilder;
29pub use execution_services_stop_report::ExecutionServicesStopReport;
30pub use qubit_executor::service::{
31    ExecutorService,
32    ExecutorServiceBuilderError,
33    ExecutorServiceLifecycle,
34    StopReport,
35    SubmissionError,
36};
37pub use qubit_executor::task::spi::{
38    TaskResultHandle,
39    TrackedTaskHandle,
40};
41pub use qubit_executor::{
42    CancelResult,
43    TaskHandle,
44    TaskResult,
45    TaskStatus,
46    TrackedTask,
47    TryGet,
48};
49pub use qubit_rayon_executor::{
50    RayonExecutorService,
51    RayonExecutorServiceBuildError,
52    RayonExecutorServiceBuilder,
53    RayonTaskHandle,
54};
55pub use qubit_thread_pool::{
56    ThreadPool,
57    ThreadPoolBuilder,
58};
59pub use qubit_tokio_executor::{
60    TokioBlockingTaskHandle,
61    TokioExecutorService,
62    TokioIoExecutorService,
63    TokioTaskHandle,
64};