pub struct CorrespondenceEngineConfig {
pub rules: Vec<CoreRule>,
pub writers: Vec<Arc<dyn EditListWriter>>,
pub compaction: Vec<Arc<dyn CompactionRule>>,
pub annotators: Vec<Arc<dyn ProjectionAnnotator>>,
pub identity_extractors: Vec<Arc<dyn IdentityExtractor>>,
pub row_keys: BTreeMap<String, Vec<String>>,
pub row_identity_policies: BTreeMap<String, RowIdentityPolicies>,
pub node_identities: BTreeMap<String, NodeIdentity>,
pub root_projection: ProjectionHint,
pub dataset_configurator: Option<Arc<dyn CorrespondenceDatasetConfigurator>>,
pub dispatch_resolver: Option<Arc<dyn DispatchResolver>>,
}Expand description
In-process registration surface for correspondence rule packs.
The engine that consumes this type lives in binoc-core, but the type stays
in the SDK so stdlib and third-party packs can be configured without
depending on host internals.
Fields§
§rules: Vec<CoreRule>§writers: Vec<Arc<dyn EditListWriter>>§compaction: Vec<Arc<dyn CompactionRule>>§annotators: Vec<Arc<dyn ProjectionAnnotator>>§identity_extractors: Vec<Arc<dyn IdentityExtractor>>Partition-identity extractors, keyed by artifact format (CFM-72). The engine dispatches these JIT over the unmatched residue when a partition-capable pair rule asks for a node’s identity tokens; they are never stored in the IR or gold. A format with no extractor here is simply not partition-capable.
row_keys: BTreeMap<String, Vec<String>>§row_identity_policies: BTreeMap<String, RowIdentityPolicies>§node_identities: BTreeMap<String, NodeIdentity>§root_projection: ProjectionHint§dataset_configurator: Option<Arc<dyn CorrespondenceDatasetConfigurator>>§dispatch_resolver: Option<Arc<dyn DispatchResolver>>Optional path-scoped dispatch resolver installed by a rule pack’s dataset configurator. Core treats it as opaque: it may annotate an item before declarative dispatch and may restrict dispatch to a named rule for that item.
Trait Implementations§
Source§impl Clone for CorrespondenceEngineConfig
impl Clone for CorrespondenceEngineConfig
Source§fn clone(&self) -> CorrespondenceEngineConfig
fn clone(&self) -> CorrespondenceEngineConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more