svlad-90/DLT-Message-Analyzer

[FILTERS_VIEW] Bugs in PCRE interpretation of the filter's view

svlad-90 opened this issue · 4 comments

Filter's view considers the negative, positive look-behind and look-ahead as groups.
image

That is wrong. The expected behavior is:

  • Either interpret groups as groups and all other PCRE elements as text:
    image
    OR
  • Fully support the whole structuring of PCRE
    image

The first approach seems to be more feasible ( as it is more simple ). But, anyway, we first should be able to properly parse the regex. ANTLR can help with that. We can use ANTLR together with the following description of RPCE to generate a parser:
https://github.com/bkiers/pcre-parser

The parser can be used to simplify the hand-written part of the source code.
This change should be applied, as its absence locks the following task - #82

antlr4 & PCRE grammar were added to the project.
A call to antlr4 generator was included in the build.

Next step is to:

  • Refactor the filters view in order to use antlr parser
  • Step over small bugs, which were identified with a switch to the usage of Qt 5.15.0. E.g. non-shown plugin's logo icon. Non-shown dlt-viewer's icon. Wrong coloring of back-ground in the combo-box Etc.
  • There is an issue with the wrong dependency between antlr PCRE parser and antlr runtime. Sometimes antlr PCRE is built before the antlr runtime is unpacked. That leads to the failure of the build.

Some of the issues were resolved with the latest PR related to this task.
The only thing that we additionally need to do in terms of this task is to start the usage of antlr PCRE parser in order to build the filter view's tree.

The project's structure was refactored to reflect sub-folders: #101

Required functionality was finally properly supported. This task can be closed. Hura! ))