feat: allow raw input with stdin
cargo devel CI / cargo CI (push) Failing after 1m38s Details

This commit is contained in:
Christoph J. Scherr 2024-09-06 12:14:15 +02:00
parent c18d1c09e9
commit fbcd6d6ccd
Signed by: cscherrNT
GPG Key ID: 8E2B45BC51A27EA7
1 changed files with 4 additions and 6 deletions

View File

@ -276,7 +276,7 @@ impl Format {
// apperently used nowhere, sometimes 0 is used as a prefix but I
// think this makes it more clear that this is decimal
Format::Dec => b"0d".to_vec(),
Format::Raw => [].to_vec(), // TODO: find a better way to deal with this
Format::Raw => [0x00].to_vec(),
// very common
Format::Hex => b"0x".to_vec(),
// very common
@ -300,6 +300,7 @@ impl Format {
let mut buf: Vec<u8> = Vec::new();
if options.prefix() {
buf.append(&mut self.prefix());
debug!("prefix the buffer: {buf:X?}");
}
match self {
Format::Hex => {
@ -335,10 +336,7 @@ impl Format {
.to_owned(),
),
// Format::Raw => buf.append(&mut split::unsigned_to_vec(num)),
Format::Raw => {
debug!("do the raw thing");
buf.append(&mut split::unsigned_to_vec(num))
}
Format::Raw => buf.append(&mut split::unsigned_to_vec(num)),
}
buf
}
@ -460,7 +458,7 @@ where
Some(sr) => sr,
None => s,
};
todo!("reading raw not implemented")
Ok(join::array_to_unsigned(s.as_bytes())?)
} else {
let e = "could not determine the format of the value".to_string();
Err(anyhow!(e))