Changeset 6142


Ignore:
Timestamp:
Aug 8, 2018, 5:49:29 PM (4 months ago)
Author:
cameron
Message:

Recursive application of NFD, NFKD

File:
1 edited

Legend:

Unmodified
Added
Removed
  • icGREP/icgrep-devel/icgrep/re/Unicode/decomposition.cpp

    r6141 r6142  
    6868            } else {
    6969                std::u32string dms = conv.from_bytes(decompMappingObj->GetStringValue(cp));
    70                 RE * dm = u32string2re(dms);
    71                 if (Seq * s = dyn_cast<Seq>(dm)) {
     70                RE * dm = NFD_RE(u32string2re(dms));
     71                if (CC * nfd_cc = dyn_cast<CC>(dm)) {
     72                    finalCC = makeCC(finalCC, nfd_cc);
     73                } else if (Seq * s = dyn_cast<Seq>(dm)) {
    7274                    if (s->size() == 1) {
    7375                        finalCC = makeCC(finalCC, cast<CC>(s->front()));
     
    100102            } else {
    101103                std::u32string dms = conv.from_bytes(decompMappingObj->GetStringValue(cp));
    102                 RE * dm = u32string2re(dms);
    103                 if (Seq * s = dyn_cast<Seq>(dm)) {
     104                RE * dm = NFKD_RE(u32string2re(dms));
     105                if (CC * nfkd_cc = dyn_cast<CC>(dm)) {
     106                    finalCC = makeCC(finalCC, nfkd_cc);
     107                } else if (Seq * s = dyn_cast<Seq>(dm)) {
    104108                    if (s->size() == 1) {
    105109                        finalCC = makeCC(finalCC, cast<CC>(s->front()));
Note: See TracChangeset for help on using the changeset viewer.