mod blueprint;
mod blueprint_executor;
mod cascade_convert;
pub mod conflict;
mod context;
mod core;
mod orchestrator;
pub mod registry;
mod spec;
mod traits;
pub use ryo_verification as verification;
pub use blueprint::{BlueprintBuilder, Conflict, ConflictKind, DependencyGraph, ParallelBlueprint};
pub use blueprint_executor::{
suggest_strategy, BlueprintExecutor, BlueprintResult, ExecutionStrategy, SpecResult, SyncError,
};
pub use cascade_convert::convert_cascade_specs;
pub use conflict::{find_conflicting_pairs, group_by_conflicts, specs_conflict, target_conflicts};
pub use context::ExecutionContext;
pub use core::CoreExecutor;
pub use orchestrator::{
classify_for_parallel_execution, partition_by_item_refs, suggest_orchestration, ConflictInfo,
ExecutionOrchestrator, OrchestratedResult, OrchestrationStrategy, OrchestratorError,
OrchestratorErrorKind,
};
pub use spec::{
EnumToTraitStrategy, InsertPosition, ItemKind, MatchHandling, MutationSpec,
MutationTargetSymbol, Scope, SelfParam, SpecRelation, SpecRelationKind, StmtInsertPosition,
TypeContext, TypeTransform, VariantKind, Visibility,
};
pub use traits::{CompositeExecutor, Executor, ExecutorError};