Skip to content

Commit 5346159

Browse files
committed
Expose cargo add internals as utils
Move cargo add utils out for future use by other subcommands (namely cargo remove, per rust-lang#10520).
1 parent d2ea9af commit 5346159

File tree

7 files changed

+16
-15
lines changed

7 files changed

+16
-15
lines changed

src/bin/cargo/commands/add.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ use cargo::core::FeatureValue;
66
use cargo::ops::cargo_add::add;
77
use cargo::ops::cargo_add::AddOptions;
88
use cargo::ops::cargo_add::DepOp;
9-
use cargo::ops::cargo_add::DepTable;
9+
use cargo::ops::edit::manifest::DepTable;
1010
use cargo::ops::resolve_ws;
1111
use cargo::util::command_prelude::*;
1212
use cargo::util::interning::InternedString;

src/cargo/ops/cargo_add/crate_spec.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
use anyhow::Context as _;
44

55
use super::Dependency;
6-
use super::RegistrySource;
6+
use crate::ops::edit::dependency::RegistrySource;
77
use crate::util::validate_package_name;
88
use crate::CargoResult;
99

src/cargo/ops/cargo_add/mod.rs

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
//! Core of cargo-add command
22
33
mod crate_spec;
4-
mod dependency;
5-
mod manifest;
6-
74
use anyhow::Context;
85
use std::collections::BTreeSet;
96
use std::collections::VecDeque;
@@ -23,18 +20,17 @@ use crate::core::QueryKind;
2320
use crate::core::Registry;
2421
use crate::core::Shell;
2522
use crate::core::Workspace;
23+
use crate::ops::edit::dependency::Dependency;
24+
use crate::ops::edit::dependency::GitSource;
25+
use crate::ops::edit::dependency::MaybeWorkspace;
26+
use crate::ops::edit::dependency::PathSource;
27+
use crate::ops::edit::dependency::Source;
28+
use crate::ops::edit::dependency::WorkspaceSource;
29+
use crate::ops::edit::manifest::DepTable;
30+
use crate::ops::edit::manifest::LocalManifest;
2631
use crate::CargoResult;
2732
use crate::Config;
2833
use crate_spec::CrateSpec;
29-
use dependency::Dependency;
30-
use dependency::GitSource;
31-
use dependency::PathSource;
32-
use dependency::RegistrySource;
33-
use dependency::Source;
34-
use manifest::LocalManifest;
35-
36-
use crate::ops::cargo_add::dependency::{MaybeWorkspace, WorkspaceSource};
37-
pub use manifest::DepTable;
3834

3935
/// Information on what dependencies should be added
4036
#[derive(Clone, Debug)]

src/cargo/ops/cargo_add/dependency.rs renamed to src/cargo/ops/edit/dependency.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -938,7 +938,7 @@ impl Display for WorkspaceSource {
938938
mod tests {
939939
use std::path::Path;
940940

941-
use crate::ops::cargo_add::manifest::LocalManifest;
941+
use crate::ops::edit::manifest::LocalManifest;
942942
use cargo_util::paths;
943943

944944
use super::*;
File renamed without changes.

src/cargo/ops/edit/mod.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
//! Utilities for editing Cargo.toml manifests
2+
3+
pub mod dependency;
4+
pub mod manifest;

src/cargo/ops/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ mod cargo_run;
4949
mod cargo_test;
5050
mod cargo_uninstall;
5151
mod common_for_install_and_uninstall;
52+
pub mod edit;
5253
mod fix;
5354
mod lockfile;
5455
mod registry;

0 commit comments

Comments
 (0)