-
Bug
-
Resolution: Unresolved
-
P3: Somewhat important
-
Some future release
-
None
-
663ff3cb0 (dev)
Lots of things have been done as part of QTBUG-119550, however there is still a huge room for improvements:
- Reconsideration threading model of DOM QTBUG-121171
- Unify data model (the way DOM stores files, Universe <> Environment interaction, etc.)
- Separate entities dealing with the reading/writing files from/to File system from the parsing. For example by introducing specifically designated QmlJSLoader, taking care of dependencies etc. Currently the verification of the supported files / types is happening inside the fileTypeForPath which is invoked inside the DomEnv/DomUniv::loadFile
- Introducing an entity, responsible for the Parsing (currently it's happening in the constructors of the QmlFile / JSFile etc.)
- Refactor the way DOM handles dependencies QTBUG-120640
- introduction of the "unified" simpler high level API. Minimize usages of DomItem (or be precise what we need from it) same applies to MutableDomItem (potentially remove it)
- In almost each class representing an Element, we can change QMultiMap to just Map, so most of the `index(0)` could be removed from the code. (we don't have duplicated properties etc.)
- Simplify / unify inheritance of types. For example Id and Binding are not inherited from `CommentableDomElement`. In general make it clear what is DomElement and what is notÂ
- Introduce unified Extract "Parsing"
- some more cleaning, making it more transparent. For example QTBUG-121198, or moving DomItem::fromCode to DomEnv
- QTBUG-121933
- Remove extraOwningItems from the DOMTop
- more to discover
- is blocked by
-
QTBUG-119550 Refactor DOMenvironment loading & parsing files
-
- Reported
-