mirror of
https://github.com/rust-lang/cargo
synced 2024-09-17 23:01:51 +00:00
Auto merge of #10209 - jonhoo:pub-manifest-from-str, r=alexcrichton
Add function for parsing already-read manifest This makes the function formerly known as `do_read_manifest` public under the name `read_manifest_from_str` so that Cargo-as-a-library users can parse a manifest without re-reading a `Cargo.toml` file they have already read from disk themselves.
This commit is contained in:
commit
3787309df6
|
@ -52,12 +52,20 @@ pub fn read_manifest(
|
|||
);
|
||||
let contents = paths::read(path).map_err(|err| ManifestError::new(err, path.into()))?;
|
||||
|
||||
do_read_manifest(&contents, path, source_id, config)
|
||||
read_manifest_from_str(&contents, path, source_id, config)
|
||||
.with_context(|| format!("failed to parse manifest at `{}`", path.display()))
|
||||
.map_err(|err| ManifestError::new(err, path.into()))
|
||||
}
|
||||
|
||||
fn do_read_manifest(
|
||||
/// Parse an already-loaded `Cargo.toml` as a Cargo manifest.
|
||||
///
|
||||
/// This could result in a real or virtual manifest being returned.
|
||||
///
|
||||
/// A list of nested paths is also returned, one for each path dependency
|
||||
/// within the manifest. For virtual manifests, these paths can only
|
||||
/// come from patched or replaced dependencies. These paths are not
|
||||
/// canonicalized.
|
||||
pub fn read_manifest_from_str(
|
||||
contents: &str,
|
||||
manifest_file: &Path,
|
||||
source_id: SourceId,
|
||||
|
|
Loading…
Reference in a new issue