pub trait FnMarkerAggr<Other: FnMarker>: FnMarker {
type Output: FnMarker;
}
Expand description
Trait for aggregating function markers.
This trait is used to combine function markers from different sources (environment, activation, etc.) to determine the overall function capabilities of a context.
§Type Parameters
Other
- The other function marker to aggregate with
§Associated Types
Output
- The resulting function marker after aggregation
§Examples
use cel_cxx::marker::{FnMarker, FnMarkerAggr};
fn aggregate_example<F1, F2>()
where
F1: FnMarker + FnMarkerAggr<F2>,
F2: FnMarker,
{
// F1::Output represents the combined capabilities
}
Required Associated Types§
Implementations on Foreign Types§
Source§impl FnMarkerAggr<Async> for ()
Available on crate feature async
only.Aggregating async with sync yields async.
impl FnMarkerAggr<Async> for ()
Available on crate feature
async
only.Aggregating async with sync yields async.
When asynchronous and synchronous capabilities are combined, the result supports asynchronous operations.
Source§impl FnMarkerAggr<()> for ()
Synchronous function aggregation.
impl FnMarkerAggr<()> for ()
Synchronous function aggregation.
Aggregating with synchronous functions yields synchronous functions.
Implementors§
Source§impl FnMarkerAggr<Async> for Async
Available on crate feature async
only.Aggregating async with async yields async.
impl FnMarkerAggr<Async> for Async
Available on crate feature
async
only.Aggregating async with async yields async.
Combining two async contexts remains async.