feat(nix-compat/narinfo/signature): add new() constructor
This is useful when creating a new Signature struct where the individual elements are already parsed. Change-Id: Ie33c66287641951e7a030aaa1e7ff0a86b2628ac Reviewed-on: https://cl.tvl.fyi/c/depot/+/10111 Reviewed-by: edef <edef@edef.eu> Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI
This commit is contained in:
parent
c44cbc852a
commit
639cca3e22
1 changed files with 5 additions and 0 deletions
|
@ -4,11 +4,16 @@ use data_encoding::BASE64;
|
||||||
|
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
pub struct Signature<'a> {
|
pub struct Signature<'a> {
|
||||||
|
/// TODO(edef): be stricter with signature names here, they especially shouldn't have newlines!
|
||||||
name: &'a str,
|
name: &'a str,
|
||||||
bytes: [u8; 64],
|
bytes: [u8; 64],
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<'a> Signature<'a> {
|
impl<'a> Signature<'a> {
|
||||||
|
pub fn new(name: &'a str, bytes: [u8; 64]) -> Self {
|
||||||
|
Self { name, bytes }
|
||||||
|
}
|
||||||
|
|
||||||
pub fn parse(input: &'a str) -> Result<Signature<'a>, SignatureError> {
|
pub fn parse(input: &'a str) -> Result<Signature<'a>, SignatureError> {
|
||||||
let (name, bytes64) = input
|
let (name, bytes64) = input
|
||||||
.split_once(':')
|
.split_once(':')
|
||||||
|
|
Loading…
Reference in a new issue