Ensure stable plugins get installed. (#1373)

This commit is contained in:
Andrés N. Robalino
2020-02-10 15:32:10 -05:00
committed by GitHub
parent 20ab125861
commit 29ccb9f5cd
49 changed files with 1900 additions and 1698 deletions

View File

@ -0,0 +1,23 @@
use nu_errors::ShellError;
use nu_plugin::Plugin;
use nu_protocol::{CallInfo, Primitive, Signature, UntaggedValue, Value};
use crate::binaryview::view_binary;
use crate::BinaryView;
impl Plugin for BinaryView {
fn config(&mut self) -> Result<Signature, ShellError> {
Ok(Signature::build("binaryview")
.desc("Autoview of binary data.")
.switch("lores", "use low resolution output mode"))
}
fn sink(&mut self, call_info: CallInfo, input: Vec<Value>) {
for v in input {
let value_anchor = v.anchor();
if let UntaggedValue::Primitive(Primitive::Binary(b)) = &v.value {
let _ = view_binary(&b, value_anchor.as_ref(), call_info.args.has("lores"));
}
}
}
}