Skip to main content

ag_forge/
lib.rs

1//! Forge review-request adapters, normalized types, and remote detection.
2
3mod adapter_common;
4mod client;
5mod command;
6mod github;
7mod gitlab;
8mod model;
9mod remote;
10
11pub(crate) use adapter_common::{
12    ReviewRequestMetadataEdit, ReviewRequestOperations, SyncReviewRequestMetadataConfig,
13    map_parse_error, normalize_provider_label, operation_failed, status_summary_parts,
14};
15#[cfg(any(test, feature = "test-utils"))]
16pub use client::MockReviewRequestClient;
17pub(crate) use client::ReviewRequestAdapter;
18pub use client::{RealReviewRequestClient, ReviewRequestClient};
19pub(crate) use command::{
20    ForgeCommand, ForgeCommandError, ForgeCommandOutput, ForgeCommandRunner,
21    RealForgeCommandRunner, command_output_detail,
22};
23pub(crate) use github::GitHubReviewRequestAdapter;
24pub(crate) use gitlab::GitLabReviewRequestAdapter;
25pub use model::{
26    CreateReviewRequestInput, ForgeFuture, ForgeKind, ForgeRemote, ReviewComment,
27    ReviewCommentAnchorSide, ReviewCommentSnapshot, ReviewCommentThread, ReviewRequestError,
28    ReviewRequestMetadata, ReviewRequestMetadataFieldUpdate, ReviewRequestState,
29    ReviewRequestSummary, UpdateReviewRequestInput, is_gitlab_host,
30};
31pub use remote::detect_remote;
32pub(crate) use remote::{parse_remote_url, strip_port};