-
Notifications
You must be signed in to change notification settings - Fork 11
Open
Labels
enhancementNew feature or requestNew feature or requestgood first issueGood for newcomersGood for newcomerslow priority
Description
First of all, it would be convenient to have a way to distinguish between test, recovery and vaccine data through an enum. This might look like the following code:
#[derive(Debug)]
pub enum CertData<'a> {
RecoveryData(&'a Recovery),
TestData(&'a Test),
VaccinationData(&'a Vaccination),
}Once we have this, DgcContainer could implement a method like get_first_cert() which might work as follows (untested):
impl DgcContainer {
pub fn get_first_cert(&self) -> Option<CertData<'_>> {
for (_, certs) in self.certs.iter() {
if let Some(v) = certs.v.first() {
return Some(CertData::VaccinationData(v));
}
if let Some(t) = certs.t.first() {
return Some(CertData::TestData(t));
}
if let Some(r) = certs.r.first() {
return Some(CertData::RecoveryData(r));
}
}
None
}
}A structurally valid Dgc should contain only one entry, so we can use this method to extract that easily.
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requestgood first issueGood for newcomersGood for newcomerslow priority