qubit-executor 0.1.3

Executor abstractions, task handles, and basic executor implementations for Qubit Rust libraries
Documentation
/*******************************************************************************
 *
 *    Copyright (c) 2025 - 2026 Haixing Hu.
 *
 *    SPDX-License-Identifier: Apache-2.0
 *
 *    Licensed under the Apache License, Version 2.0.
 *
 ******************************************************************************/
use super::Executor;

/// Marker trait for executors whose execution carrier is a future.
///
/// A `FutureExecutor` is still an [`Executor`]: it executes
/// [`Runnable`](qubit_function::Runnable) and
/// [`Callable`](qubit_function::Callable) tasks through [`Executor::execute`]
/// and [`Executor::call`].
/// Its distinguishing contract is that `Self::Execution<R, E>` should be a
/// future resolving to `Result<R, E>`.
///
/// Rust cannot currently express this contract for all `R` and `E` directly in
/// the trait definition, so implementations must document and uphold it.
///
pub trait FutureExecutor: Executor {}