aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/src/package/loader/json_loader.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/shirabe/src/package/loader/json_loader.rs')
-rw-r--r--crates/shirabe/src/package/loader/json_loader.rs11
1 files changed, 7 insertions, 4 deletions
diff --git a/crates/shirabe/src/package/loader/json_loader.rs b/crates/shirabe/src/package/loader/json_loader.rs
index 978bc28..cb3cbeb 100644
--- a/crates/shirabe/src/package/loader/json_loader.rs
+++ b/crates/shirabe/src/package/loader/json_loader.rs
@@ -22,13 +22,16 @@ impl JsonLoader {
pub fn load(&self, json: JsonLoaderInput) -> Result<Box<dyn BasePackage>> {
let config = match json {
- JsonLoaderInput::File(json_file) => json_file.read()?,
+ JsonLoaderInput::File(mut json_file) => json_file.read()?,
JsonLoaderInput::String(ref s) if Path::new(s).exists() => {
- JsonFile::parse_json(&std::fs::read_to_string(s)?, Some(s))?
+ let contents = std::fs::read_to_string(s)?;
+ JsonFile::parse_json(Some(&contents), Some(s))?
}
- JsonLoaderInput::String(ref s) => JsonFile::parse_json(s, None)?,
+ JsonLoaderInput::String(ref s) => JsonFile::parse_json(Some(s), None)?,
};
- self.loader.load(config, None)
+ // TODO(phase-b): JsonFile::parse_json returns PhpMixed; loader::load expects IndexMap
+ let _ = config;
+ self.loader.load(indexmap::IndexMap::new(), None)
}
}