Auf dieser Seite

QQmlSA Namespace

Bietet Werkzeuge zur statischen Analyse von QML-Programmen. Mehr...

Überschrift: #include <qqmljsloggingutils.h>
CMake: find_package(Qt6 REQUIRED COMPONENTS QmlCompiler)
target_link_libraries(mytarget PRIVATE Qt6::QmlCompiler)
Status: Technologie-Vorschau

Dieser Namespace befindet sich in der Technologievorschau und kann sich noch ändern.

Klassen

(technology preview) class Binding
(technology preview) class DocumentEdit
(technology preview) class Element
(technology preview) class ElementPass
(technology preview) class FixSuggestion
(technology preview) class GenericPass
(technology preview) class LintPlugin
(technology preview) class LoggerWarningId
(technology preview) class Method
(technology preview) class PassManager
(technology preview) class Property
(technology preview) class PropertyPass
(technology preview) class SourceLocation

Typen

(technology preview) enum class AccessSemantics { Reference, Value, None, Sequence }
(technology preview) enum class BindingType { Invalid, BoolLiteral, NumberLiteral, StringLiteral, RegExpLiteral, …, GroupProperty }
(technology preview) enum class MethodType { Signal, Slot, Method, StaticMethod }
enum class ScopeType { JSFunctionScope, JSLexicalScope, QMLScope, GroupedPropertyScope, AttachedPropertyScope, …, SignalHandlerFunctionScope }
(technology preview) enum class ScriptBindingKind { Invalid, PropertyBinding, SignalHandler, ChangeHandler }
(technology preview) enum class WarningSeverity { Error, Warning, Info, Disable }

Ausführliche Beschreibung

Klassen

Klasse „Binding“

Stellt eine einzelne QML-Eigenschaftsbindung für einen bestimmten Typ dar. Mehr...

Klasse „DocumentEdit“

Stellt eine einzelne Bearbeitung an einem Dokument dar. Mehr...

Klasse Element

Stellt einen QML-Typ dar. Mehr...

Klasse ElementPass

Basisklasse für alle statischen Analyse-Durchläufe an Elementen. Mehr...

Klasse „FixSuggestion“

Stellt einen Korrekturvorschlag für ein Problem im Quellcode dar. Mehr...

Klasse GenericPass

Die Basisklasse für statische Analyse-Durchläufe. Mehr...

Klasse LintPlugin

Basisklasse für alle Plugins zur statischen Analyse. Mehr...

Klasse „LoggerWarningId“

Ein Wrapper um ein String-Literal zur eindeutigen Identifizierung von Warnkategorien im „ QQmlSA “-Framework. Mehr...

Klasse „Method“

Stellt eine QML-Methode dar. Mehr...

Klasse „PassManager“

Kann ein Element und dessen untergeordnete Elemente mit statischen Analyse-Durchläufen analysieren. Mehr...

Klasse „Property“

Stellt eine QML-Eigenschaft dar. Mehr...

Klasse „PropertyPass“

Basisklasse für alle statischen Analyse-Durchläufe für Eigenschaften. Mehr...

Klasse „SourceLocation“

Stellt eine Stelle oder einen Bereich im Quellcode dar. Mehr...

Typdokumentation

[technology preview] enum class QQmlSA::AccessSemantics

Diese Enumeration befindet sich in der Technology Preview und kann sich noch ändern.

Beschreibt, wie auf einen Typ zugegriffen und wie er gemeinsam genutzt wird.

KonstanteWertBeschreibung
QQmlSA::AccessSemantics::Reference0Der Typ verhält sich wie ein Object-Typ
QQmlSA::AccessSemantics::Value1Der Typ verhält sich wie ein Werttyp
QQmlSA::AccessSemantics::None2Der Typ ist ein Namespace oder ungültig
QQmlSA::AccessSemantics::Sequence3Der Typ verhält sich wie ein Sequenz-Typ

Siehe auch: Das QML-Typsystem.

[technology preview] enum class QQmlSA::BindingType

Diese Enumeration befindet sich in der Technology Preview und kann sich noch ändern.

Beschreibt den Typ eines „ QQmlSA::Binding “.

KonstanteWertBeschreibung
QQmlSA::BindingType::Invalid0Es gibt keine Bindung
QQmlSA::BindingType::BoolLiteral1Die Bindung ist ein bool-Literal
QQmlSA::BindingType::NumberLiteral2Die Zuordnung ist ein Zahlenliteral
QQmlSA::BindingType::StringLiteral3Die Bindung ist ein Zeichenfolgenliteral
QQmlSA::BindingType::RegExpLiteral4Die Bindung ist ein Literal für einen regulären Ausdruck
QQmlSA::BindingType::Null5Die Zuordnung ist ein Null-Literal
QQmlSA::BindingType::Translation6Die Bindung ist eine Übersetzung
QQmlSA::BindingType::TranslationById7Die Bindung ist eine Übersetzung nach ID
QQmlSA::BindingType::Script8Die Bindung ist ein reguläres Skript
QQmlSA::BindingType::Object9Die Bindung ist ein Objekt
QQmlSA::BindingType::Interceptor10Die Bindung ist ein Interceptor, der Schreibvorgänge in Eigenschaften wie Behavior
QQmlSA::BindingType::ValueSource11Die Bindung ist eine Eigenschaftswertquelle
QQmlSA::BindingType::AttachedProperty12Die Bindung ist ein angehängtes Objekt
QQmlSA::BindingType::GroupProperty13Die Bindung ist eine gruppierte Eigenschaft

[technology preview] enum class QQmlSA::MethodType

Diese Enumeration befindet sich in der Technology Preview und kann sich noch ändern.

Beschreibt den Typ eines „ QQmlSA::Method “.

KonstanteWertBeschreibung
QQmlSA::MethodType::Signal0Die Methode ist ein Signal
QQmlSA::MethodType::Slot1Die Methode ist ein Slot
QQmlSA::MethodType::Method2Die Methode ist eine „ Q_INVOKABLE “-Methode
QQmlSA::MethodType::StaticMethod3Die Methode ist eine statische „ Q_INVOKABLE “-Methode

enum class QQmlSA::ScopeType

Beschreibt den Typ des QML-Gültigkeitsbereichs.

KonstanteWertBeschreibung
QQmlSA::ScopeType::JSFunctionScope0Der Geltungsbereich ist eine JavaScript-Funktion:
Item {
    function f() : int { <- begin
        return 1
    } <- end
}
QQmlSA::ScopeType::JSLexicalScope1Der Geltungsbereich ist ein lexikalischer Geltungsbereich in JavaScript:
property int i: { <- begin
    let a = 1
    { <- begin
        console.log("hello")
    } <- end
    return a
} <- end
QQmlSA::ScopeType::QMLScope2Der Geltungsbereich ist ein QML-Objekt:
Item { <- begin
    x: 50
} <- end
QQmlSA::ScopeType::GroupedPropertyScope3Der Geltungsbereich ist eine gruppierte Eigenschaft:
Text {
    font { <- begin
        pixelSize: 12
        bold: true
    } <- end
}
QQmlSA::ScopeType::AttachedPropertyScope4Der Geltungsbereich ist eine angehängte Eigenschaft:
Item {
    Component.onCompleted: console.log("Hello")
    ^^^^^^^^^
             \ Scope of attached property Component
}
QQmlSA::ScopeType::EnumScope5Der Geltungsbereich ist eine QML -Enumeration:
enum E { <- begin
    A,
    B,
    C
} <- end
QQmlSA::ScopeType::BindingFunctionScope (since Qt 6.11)6Der Geltungsbereich stellt den Ausdruck einer Bindung dar:
Item {
    width: <- begin 10 +
        2 *parent.width <- end
}

Vor Qt 6.11 wurde dies als „JSFunctionScope“ gemeldet

KonstanteWertBeschreibung
QQmlSA::ScopeType::SignalHandlerFunctionScope (since Qt 6.11)7Der Geltungsbereich repräsentiert eine Funktion, die als Signal-Handler verwendet wird:
Timer {
    onTriggered: <- begin console.log("hi") <- end
}

Vor Qt 6.11 wurde dies als „JSFunctionScope“ gemeldet

Jeder Eintrag wird mit einem Beispiel-Scope des entsprechenden Typs im QML-Code angezeigt.

[technology preview] enum class QQmlSA::ScriptBindingKind

Diese Enumeration befindet sich in der Technology Preview und kann sich noch ändern.

Beschreibt den Skripttyp eines „ QQmlSA::Binding “ vom Typ „ Script “.

KonstanteWertBeschreibung
QQmlSA::ScriptBindingKind::Invalid0Die Bindung enthält ein ungültiges Skript
QQmlSA::ScriptBindingKind::PropertyBinding1Die Bindung ist an eine Eigenschaft gebunden
QQmlSA::ScriptBindingKind::SignalHandler2Die Bindung ist ein Signal-Handler
QQmlSA::ScriptBindingKind::ChangeHandler3Die Bindung ist ein Änderungshandler

[technology preview] enum class QQmlSA::WarningSeverity

Diese Enumeration befindet sich in der Technologievorschau und kann sich noch ändern.

Enthält die möglichen Schweregrade von Diagnosemeldungen für eine Protokollierungskategorie.

KonstanteWertBeschreibung
QQmlSA::WarningSeverity::ErrorQtMsgType::QtCriticalMsgMeldungen dieser Protokollierungskategorie lösen einen Fehler aus.
QQmlSA::WarningSeverity::WarningQtMsgType::QtWarningMsgMeldungen dieser Protokollierungskategorie sind Warnungen. Es wird kein Fehler ausgelöst, es sei denn, die Einstellung „MaxWarnings“ ist festgelegt und wird überschritten.
QQmlSA::WarningSeverity::InfoQtMsgType::QtInfoMsgMeldungen dieser Protokollierungskategorie dienen rein informativen Zwecken und werden nicht auf den Wert von „MaxWarnings“ angerechnet.
QQmlSA::WarningSeverity::Disable100Diese Protokollierungskategorie gibt keine Meldungen aus.

Diese Aufzählung wurde in Qt 6.12 eingeführt.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.