]>
Commit | Line | Data |
---|---|---|
bbbf2dea YKCL |
1 | use std::io::File; |
2 | use util; | |
c57fef45 | 3 | use url::Url; |
9224a5ae | 4 | use core::{Package,Manifest,SourceId}; |
bbbf2dea | 5 | use util::{CargoResult,io_error}; |
62bff631 | 6 | |
9224a5ae YKCL |
7 | pub fn read_manifest(contents: &[u8], source_id: &SourceId) -> CargoResult<(Manifest, Vec<Path>)> { |
8 | util::toml::to_manifest(contents, source_id) | |
b3c23503 CL |
9 | } |
10 | ||
9224a5ae YKCL |
11 | pub fn read_package(path: &Path, source_id: &SourceId) -> CargoResult<(Package, Vec<Path>)> { |
12 | log!(5, "read_package; path={}; source-id={}", path.display(), source_id); | |
bbbf2dea YKCL |
13 | let mut file = try!(File::open(path).map_err(io_error)); |
14 | let data = try!(file.read_to_end().map_err(io_error)); | |
9224a5ae | 15 | let (manifest, nested) = try!(read_manifest(data.as_slice(), source_id)); |
bbbf2dea | 16 | |
9224a5ae | 17 | Ok((Package::new(manifest, path), nested)) |
62bff631 | 18 | } |