Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-119550

Refactor DOMenvironment loading & parsing files

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • P2: Important
    • None
    • dev
    • QML: Tooling
    • None
    • fd4148e2a (dev), 2874c79ce (dev), 9c1adc5e2 (dev), bb4391a93 (dev), 3805424ab (dev), 571eea018 (dev), 751d3441a (dev), b70afcb26 (dev), 865e7b4ee (dev), f3d6149d0 (dev), b95a77a30 (dev), 8f3de141a (dev), a21fa4862 (dev), 09d7e7d91 (dev), 0f5929163 (dev)

    Description

      Currently the way DomEnvironment loads and parses files / directories is coupled and contained lot's of copy-paste. One of the example is DomEnvironment::loadFile.

      Moreover, the following things are currently coupled:

      1. Creating Env / Univ inside the DomItem::loadFile (this is questionable)
      2. Parsing files(meaning instantiating lexer / engine) is done inside the constructors of the files
      3. It's not clear how many of the "features" are actually being used
      4. Loading / parsing is happening through the ParsingTask being placed to Queue... Which is handled by the DomUniverse(??).
      5. There are some bugs, for example in DomItem::loadFile, callback is being called with Paths::qmlFileInfoPath, however there are other possibilities, for example qmldirFileInfoPath and jsFileInfoPath.
      6. Some other unknown stuff to be discovered caused by 1&2

      Overall, I think better separation of concerns and modularity has to be introduced there.

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              dima.a Dmitrii Akshintsev
              dima.a Dmitrii Akshintsev
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:

                Gerrit Reviews

                  There are no open Gerrit changes