diff options
Diffstat (limited to 'fatcat-cli/src/main.rs')
-rw-r--r-- | fatcat-cli/src/main.rs | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/fatcat-cli/src/main.rs b/fatcat-cli/src/main.rs index 9e995d2..af22f85 100644 --- a/fatcat-cli/src/main.rs +++ b/fatcat-cli/src/main.rs @@ -670,6 +670,34 @@ fn run(opt: Opt) -> Result<()> { "entity schema output not supported for references index" )); } + (false, true, SearchEntityType::ReferenceIn) => { + if !hit["source_release_ident"].is_string() { + continue; + } + let specifier = Specifier::Release( + hit["source_release_ident"].as_str().unwrap().to_string(), + ); + let entity = specifier.get_from_api( + &mut api_client, + expand.clone(), + hide.clone(), + )?; + writeln!(&mut std::io::stdout(), "{}", entity.to_json_string()?)? + } + (false, true, SearchEntityType::ReferenceOut) => { + if !hit["target_release_ident"].is_string() { + continue; + } + let specifier = Specifier::Release( + hit["target_release_ident"].as_str().unwrap().to_string(), + ); + let entity = specifier.get_from_api( + &mut api_client, + expand.clone(), + hide.clone(), + )?; + writeln!(&mut std::io::stdout(), "{}", entity.to_json_string()?)? + } } } } |