diff --git a/parsers/src/caps.rs b/parsers/src/caps.rs index ecb4853001cca3b59220136c64d1dba0d0c137b4..7e6f98b1755cc08314f195f339144f17de059241 100644 --- a/parsers/src/caps.rs +++ b/parsers/src/caps.rs @@ -85,8 +85,8 @@ fn compute_features(features: &[Feature]) -> Vec { fn compute_identities(identities: &[Identity]) -> Vec { compute_items(identities, |identity| { - let lang = identity.lang.clone().unwrap_or_default(); - let name = identity.name.clone().unwrap_or_default(); + let lang = identity.lang.as_deref().unwrap_or_default(); + let name = identity.name.as_deref().unwrap_or_default(); let string = format!("{}/{}/{}/{}", identity.category, identity.type_, lang, name); let mut vec = string.as_bytes().to_vec(); vec.push(b'<'); @@ -103,7 +103,7 @@ fn compute_extensions(extensions: &[DataForm]) -> Vec { vec![] }; bytes.push(b'<'); - for field in extension.fields.clone() { + for field in &extension.fields { if field.var.as_deref() == Some("FORM_TYPE") { continue; } diff --git a/parsers/src/ecaps2.rs b/parsers/src/ecaps2.rs index f6882af01b2bcf95e03d5b174794367740a11e6f..1d45c2bef6873227a92e256c2556145ff4b19ef7 100644 --- a/parsers/src/ecaps2.rs +++ b/parsers/src/ecaps2.rs @@ -73,10 +73,10 @@ fn compute_identities(identities: &[Identity]) -> Vec { let mut bytes = compute_item(&identity.category); bytes.append(&mut compute_item(&identity.type_)); bytes.append(&mut compute_item( - &identity.lang.clone().unwrap_or_default(), + identity.lang.as_deref().unwrap_or_default(), )); bytes.append(&mut compute_item( - &identity.name.clone().unwrap_or_default(), + identity.name.as_deref().unwrap_or_default(), )); bytes.push(0x1e); bytes