Details
-
Task
-
Resolution: Fixed
-
P3: Somewhat important
-
None
Description
From andrei's notes:
- \terra incognita
- they define a new type (as if having a separate QML file), so must be handled similarly (extra care should be given to how context hierarchy is handled for them: as for document roots?)
- they use the compilation unit of the QML file (no separate CU)
- they support cyclic references but not cyclic instantiations (would it actually work for qmltc? might have to use QQmlComponent wrapping just because of this)
import QtQuick 2.15 Item { component A : Item { property B b // NB: if "b: B {}", it should be a recursion error } component B : Item { property A a } A { b: B { Component.onCompleted: console.log(a) } } }
- could be troublesome in the code resolving names to types (e.g. is Foo.Bar an enum.enumerator or an inline component?)
Attachments
Issue Links
- is blocked by
-
QTBUG-104664 (qmltc) Use QQmlListProperty<QObject> instead of QQmlListReference in generated code
- Closed
- is required for
-
QTBUG-91956 (qmltc) Support QML language and QQmlEngine related features
- Closed
- relates to
-
QTBUG-105538 qmltc evolution collection task
- Open