Skip to main content

origin_platform/
lib.rs

1//! Platform contracts (ADR-0001).
2
3mod confirmation;
4mod notifications;
5mod opener;
6pub mod paths;
7pub mod process;
8pub mod shortcut;
9pub mod tray;
10pub mod watcher;
11pub mod workspace;
12
13pub mod memory_process;
14pub mod memory_watcher;
15pub mod memory_workspace;
16
17#[cfg(feature = "testing")]
18pub mod process_contract;
19
20#[cfg(feature = "testing")]
21pub mod watcher_contract;
22
23#[cfg(feature = "testing")]
24pub mod testing;
25
26#[cfg(feature = "testing")]
27pub mod workspace_contract;
28
29pub use confirmation::{
30    ConfirmationDecision, ConfirmationRequest, ConfirmationService, DenyingConfirmationService,
31};
32pub use notifications::{
33    NoopNotificationService, Notification, NotificationAction, NotificationService, Urgency,
34};
35pub use opener::Opener;
36pub use process::{ProcessAllowlist, ProcessOutput, ProcessRunner};
37pub use shortcut::{GlobalShortcutService, NoopGlobalShortcutService, Shortcut};
38pub use tray::{NoopTrayService, TrayBadge, TrayMenuItem, TrayService};
39pub use watcher::{WatchHandle, WorkspaceChange, WorkspaceWatcher};
40pub use workspace::{DirEntry, RelPath, WorkspaceFs, WorkspaceRoot};
41
42pub use memory_process::MemoryProcessRunner;
43pub use memory_watcher::MemoryWorkspaceWatcher;
44pub use memory_workspace::MemoryWorkspaceFs;