Overview
Comment: | [core] gc_engine: some comments |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | core | rg |
Files: | files | file ages | folders |
SHA3-256: |
45d2b648e64049a2c2e38ff8194523a3 |
User & Date: | olr on 2018-06-23 11:23:28 |
Other Links: | branch diff | manifest | tags |
Context
2018-06-23
| ||
11:24 | [fr] notes sur la langue française + adaptation de règles concernant les pronoms check-in: 71f721941f user: olr tags: fr, rg | |
11:23 | [core] gc_engine: some comments check-in: 45d2b648e6 user: olr tags: core, rg | |
08:11 | [fr] conversion: regex rules -> graph rules check-in: c79567338a user: olr tags: fr, rg | |
Changes
Modified gc_core/py/lang_core/gc_engine.py from [dbd98c6fb9] to [3fb4a33065].
︙ | ︙ | |||
589 590 591 592 593 594 595 | self.sSentence0 = sSentence0 self.nOffsetWithinParagraph = nOffset self.lToken = list(_oTokenizer.genTokens(sSentence, True)) self.dTokenPos = { dToken["nStart"]: dToken for dToken in self.lToken } self.dTags = {} self.createError = self._createWriterError if _bWriterError else self._createDictError | < | 589 590 591 592 593 594 595 596 597 598 599 600 601 602 | self.sSentence0 = sSentence0 self.nOffsetWithinParagraph = nOffset self.lToken = list(_oTokenizer.genTokens(sSentence, True)) self.dTokenPos = { dToken["nStart"]: dToken for dToken in self.lToken } self.dTags = {} self.createError = self._createWriterError if _bWriterError else self._createDictError def update (self, sSentence): self.sSentence = sSentence self.lToken = list(_oTokenizer.genTokens(sSentence, True)) def _getNextMatchingNodes (self, dToken, dGraph, dNode, bDebug=False): "generator: return nodes where <dToken> “values” match <dNode> arcs" # token value |
︙ | ︙ | |||
671 672 673 674 675 676 677 678 679 680 681 682 683 684 | if not sPattern or any(re.search(sPattern, sMorph) for sMorph in _oSpellChecker.getMorph(dToken["sValue"])): if bDebug: print(" MATCH: @" + sRegex) yield dGraph[dNode["<re_morph>"][sRegex]] # meta arc (for token type) if "<meta>" in dNode: for sMeta in dNode["<meta>"]: if sMeta == "*": if bDebug: print(" MATCH: *" + sMeta) yield dGraph[dNode["<meta>"]["*"]] elif "¬" in sMeta: if dNode["sType"] not in sMeta: if bDebug: | > | 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 | if not sPattern or any(re.search(sPattern, sMorph) for sMorph in _oSpellChecker.getMorph(dToken["sValue"])): if bDebug: print(" MATCH: @" + sRegex) yield dGraph[dNode["<re_morph>"][sRegex]] # meta arc (for token type) if "<meta>" in dNode: for sMeta in dNode["<meta>"]: # not regex here, we just search if <dNode["sType"]> exists within <sMeta> if sMeta == "*": if bDebug: print(" MATCH: *" + sMeta) yield dGraph[dNode["<meta>"]["*"]] elif "¬" in sMeta: if dNode["sType"] not in sMeta: if bDebug: |
︙ | ︙ | |||
730 731 732 733 734 735 736 | if bDebug: print("ACTION:", sRuleId) print(dRule[sRuleId]) sOption, sFuncCond, cActionType, sWhat, *eAct = dRule[sRuleId] # Suggestion [ option, condition, "-", replacement/suggestion/action, iTokenStart, iTokenEnd, nPriority, message, URL ] # TextProcessor [ option, condition, "~", replacement/suggestion/action, iTokenStart, iTokenEnd ] # Disambiguator [ option, condition, "=", replacement/suggestion/action ] | | | 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 | if bDebug: print("ACTION:", sRuleId) print(dRule[sRuleId]) sOption, sFuncCond, cActionType, sWhat, *eAct = dRule[sRuleId] # Suggestion [ option, condition, "-", replacement/suggestion/action, iTokenStart, iTokenEnd, nPriority, message, URL ] # TextProcessor [ option, condition, "~", replacement/suggestion/action, iTokenStart, iTokenEnd ] # Disambiguator [ option, condition, "=", replacement/suggestion/action ] # Sentence Tag [ option, condition, "/", replacement/suggestion/action, iTokenStart, iTokenEnd ] # Test [ option, condition, ">", "" ] if not sOption or dOptions.get(sOption, False): bCondMemo = not sFuncCond or globals()[sFuncCond](self.lToken, nTokenOffset, nLastToken, sCountry, bCondMemo, self.dTags, self.sSentence, self.sSentence0) if bCondMemo: if cActionType == "-": # grammar error nTokenErrorStart = nTokenOffset + eAct[0] |
︙ | ︙ |