Skip to main content

weavatrix_worktree/
lib.rs

1#![forbid(unsafe_code)]
2#![doc = include_str!("../README.md")]
3
4mod error;
5mod hash;
6mod metadata;
7mod plan;
8
9mod edit;
10mod filesystem;
11mod journal;
12mod limits;
13mod operation;
14mod options;
15mod report;
16mod scheduler;
17mod transaction;
18mod worktree;
19
20pub use error::{TransactionPhase, WorktreeError, WorktreeErrorCode};
21pub use hash::{ParseSha256Error, Sha256Hash};
22pub use limits::WorktreeLimits;
23pub use operation::{
24    ParseUndoIdError, PreparedWorktreeTransaction, RetainedApplyReport, UndoId, UndoReceipt,
25    UndoRetention, UndoRollbackReport, UndoStoreUsage, WorktreeSnapshotFingerprint,
26};
27pub use options::WorktreeOptions;
28pub use report::{
29    AbortReport, ApplyReport, DryRunReport, FileChange, OperationChange, OperationKind,
30    RecoveryAction, RecoveryReport, WorktreeApplyReport, WorktreeDryRunReport,
31};
32pub use transaction::PreparedTransaction;
33pub use weavatrix_refactor_plan::{
34    CreateFile, CreatePermissions, DeleteFile, REFACTOR_PLAN_SCHEMA, RefactorOperation,
35    RefactorPlan, RefactorPlanLimits, RenameFile,
36};
37pub use weavatrix_refactor_plan::{EditPlan, FileEdit};
38pub use weavatrix_refactor_plan::{
39    REFACTOR_PLAN_SCHEMA as WORKTREE_PLAN_SCHEMA, RefactorOperation as WorktreeOperation,
40    RefactorPlan as WorktreePlan, RefactorPlanLimits as WorktreePlanLimits,
41};
42pub use worktree::Worktree;
43
44/// Crate version compiled into this library.
45pub const VERSION: &str = env!("CARGO_PKG_VERSION");