improve tgs parser

fogti
Sep 12, 2021, 1:01 AM
AH7SJKRL4HVDPKKS3DBUAVA26UILTIOWCFMVXMVPQVNRZIQSCE3QC

Dependencies

  • [2] 2VLV4YJD put diary date parser into yz-diary-date; improve dbtin parser, return HashMap
  • [3] 5OQGNADF add tgs support to zhed-misc-parsers

Change contents

  • replacement in crates/zhed-misc-parsers/src/tgs.rs at line 15
    [3.477][3.477:521]()
    if let Some(p) = x.find(": ") {
    [3.477]
    [3.521]
    if let Some(p) = x.find(':') {
  • replacement in crates/zhed-misc-parsers/src/tgs.rs at line 17
    [3.549][2.0:72]()
    ret.insert(&x[..p], vec![x[p + 2..].trim_start()]);
    [3.549]
    [3.619]
    ret.insert(&x[..p], vec![x[p + 1..].trim_start()]);
  • replacement in crates/zhed-misc-parsers/src/tgs.rs at line 29
    [3.819][3.819:851]()
    if i.starts_with('%') {
    [3.819]
    [3.851]
    if let Some(j) = i.strip_prefix('%') {
  • replacement in crates/zhed-misc-parsers/src/tgs.rs at line 33
    [3.962][3.962:1024]()
    section = Some((&i[1..].trim_end(), Vec::new()));
    [3.962]
    [3.1024]
    section = Some((j.trim_end(), Vec::new()));
  • replacement in crates/zhed-misc-parsers/src/tgs.rs at line 57
    [3.1596][3.1596:1723]()
    for val in ret.values_mut() {
    while val.last().map(|i| i.trim().is_empty()) == Some(true) {
    val.pop();
    [3.1596]
    [3.1723]
    ret.values_mut().for_each(|val| {
    while let Some(x) = val.pop() {
    if !x.trim().is_empty() {
    val.push(x);
    break;
    }
  • replacement in crates/zhed-misc-parsers/src/tgs.rs at line 64
    [3.1733][3.1733:1768]()
    val.shrink_to_fit();
    }
    [3.1733]
    [3.1768]
    });
  • replacement in crates/zhed-misc-parsers/src/tgs.rs at line 66
    [3.1769][3.1769:1785]()
    return ret;
    [3.1769]
    [3.1785]
    ret