このページでは

QQmlSA Namespace

QMLプログラムの静的解析を行うためのツールを提供します。詳細...

ヘッダー: #include <qqmljsloggingutils.h>
CMake: find_package(Qt6 REQUIRED COMPONENTS QmlCompiler)
target_link_libraries(mytarget PRIVATE Qt6::QmlCompiler)
ステータス: テクノロジープレビュー

この名前空間はテクノロジープレビュー段階にあり、変更される可能性があります。

クラス

(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

型

(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 }

詳細な説明

クラス

classBinding

特定の型に対する単一の QML プロパティバインディングを表します。詳細...

classDocumentEdit

ドキュメントに対する単一の編集を表します。詳細...

classElement

QML型を表します。詳細...

classElementPass

要素に対するすべての静的解析パスの基底クラスです。詳細...

classFixSuggestion

ソースコード内の問題に対する修正提案を表します。詳細...

classGenericPass

静的解析パスの基底クラス。詳細...

classLintPlugin

すべての静的解析プラグインの基底クラスです。詳細...

classLoggerWarningId

QQmlSA フレームワークにおいて、警告カテゴリを一意に識別するための文字列リテラルをラップしたクラスです。詳細...

classMethod

QMLメソッドを表します。詳細...

classPassManager

静的解析パスを使用して、要素とその子要素を解析できます。詳細...

classProperty

QMLのプロパティを表します。詳細...

classPropertyPass

プロパティに対するすべての静的解析パスの基底クラスです。詳細...

classSourceLocation

ソースコード内の位置または領域を表します。詳細...

型ドキュメント

[technology preview] enum class QQmlSA::AccessSemantics

この列挙型はテクノロジープレビュー段階であり、変更される可能性があります。

型へのアクセス方法および共有方法を記述します。

定数値説明
QQmlSA::AccessSemantics::Reference0この型はObject 型のように振る舞います
QQmlSA::AccessSemantics::Value1この型は値型のように振る舞います
QQmlSA::AccessSemantics::None2その型は名前空間であるか、無効です
QQmlSA::AccessSemantics::Sequence3この型はシーケンス型のように振る舞います

関連項目: QML タイプシステム。

[technology preview] enum class QQmlSA::BindingType

この列挙型はテクノロジープレビュー段階にあり、変更される可能性があります。

QQmlSA::Binding の型を記述します。

定数値説明
QQmlSA::BindingType::Invalid0バインディングはありません
QQmlSA::BindingType::BoolLiteral1バインディングはありません
QQmlSA::BindingType::NumberLiteral2バインディングは数値リテラルです
QQmlSA::BindingType::StringLiteral3バインディングは文字列リテラルです
QQmlSA::BindingType::RegExpLiteral4バインディングは正規表現リテラルです
QQmlSA::BindingType::Null5バインディングは null リテラルです
QQmlSA::BindingType::Translation6バインディングは変換です
QQmlSA::BindingType::TranslationById7バインディングは ID による変換です
QQmlSA::BindingType::Script8バインディングはスクリプトです
QQmlSA::BindingType::Object9バインディングはオブジェクトです
QQmlSA::BindingType::Interceptor10バインディングは、次のようなプロパティへの書き込みをインターセプトできるインターセプタですBehavior
QQmlSA::BindingType::ValueSource11バインディングはプロパティ値のソースです
QQmlSA::BindingType::AttachedProperty12このバインディングは、アタッチされたオブジェクトです
QQmlSA::BindingType::GroupProperty13バインディングはグループ化されたプロパティです

[technology preview] enum class QQmlSA::MethodType

この列挙型はテクノロジープレビュー段階にあり、変更される可能性があります。

QQmlSA::Method の型を記述します。

定数値説明
QQmlSA::MethodType::Signal0このメソッドはシグナルです
QQmlSA::MethodType::Slot1このメソッドはシグナルです。このメソッドはスロットです。
QQmlSA::MethodType::Method2このメソッドはQ_INVOKABLE メソッドです
QQmlSA::MethodType::StaticMethod3このメソッドは、Q_INVOKABLE の静的メソッドです

enum class QQmlSA::ScopeType

QMLスコープのタイプを記述します。

定数値説明
QQmlSA::ScopeType::JSFunctionScope0スコープは JavaScript 関数です:
Item {
    function f() : int { <- begin
        return 1
    } <- end
}
QQmlSA::ScopeType::JSLexicalScope1スコープは JavaScript のレキシカルスコープです:
property int i: { <- begin
    let a = 1
    { <- begin
        console.log("hello")
    } <- end
    return a
} <- end
QQmlSA::ScopeType::QMLScope2スコープは QML オブジェクトです:
Item { <- begin
    x: 50
} <- end
QQmlSA::ScopeType::GroupedPropertyScope3スコープはグループ化されたプロパティです:
Text {
    font { <- begin
        pixelSize: 12
        bold: true
    } <- end
}
QQmlSA::ScopeType::AttachedPropertyScope4スコープはアタッチドプロパティです:
Item {
    Component.onCompleted: console.log("Hello")
    ^^^^^^^^^
             \ Scope of attached property Component
}
QQmlSA::ScopeType::EnumScope5スコープはQMLの列挙型です:
enum E { <- begin
    A,
    B,
    C
} <- end
QQmlSA::ScopeType::BindingFunctionScope (since Qt 6.11)6スコープは、バインディングの式を表します:
Item {
    width: <- begin 10 +
        2 *parent.width <- end
}

Qt 6.11 以前では、これは JSFunctionScope として報告されていました

定数値説明
QQmlSA::ScopeType::SignalHandlerFunctionScope (since Qt 6.11)7このスコープは、シグナルハンドラとして使用される関数を表します:
Timer {
    onTriggered: <- begin console.log("hi") <- end
}

Qt 6.11 以前は、これは JSFunctionScope として報告されていました

各項目には、QMLコードにおける対応する型のスコープの例が示されています。

[technology preview] enum class QQmlSA::ScriptBindingKind

この列挙型はテクノロジープレビュー段階にあり、変更される可能性があります。

Script 型のQQmlSA::Binding のスクリプト種別を指定します。

定数値説明
QQmlSA::ScriptBindingKind::Invalid0バインディングのスクリプトが無効です
QQmlSA::ScriptBindingKind::PropertyBinding1バインディングに無効なスクリプトがあります
QQmlSA::ScriptBindingKind::SignalHandler2バインディングがシグナルハンドラです
QQmlSA::ScriptBindingKind::ChangeHandler3バインディングが変更ハンドラです

[technology preview] enum class QQmlSA::WarningSeverity

この列挙型はテクノロジープレビュー段階にあり、変更される可能性があります。

ログカテゴリに対する診断メッセージの可能な重大度レベルを保持します。

定数値説明
QQmlSA::WarningSeverity::ErrorQtMsgType::QtCriticalMsgこのロギングカテゴリによって出力されるメッセージは、エラーを引き起こします。
QQmlSA::WarningSeverity::WarningQtMsgType::QtWarningMsgこのロギングカテゴリによって出力されるメッセージは警告です。MaxWarnings設定が設定され、その値を超えない限り、エラーは発生しません。
QQmlSA::WarningSeverity::InfoQtMsgType::QtInfoMsgこのロギングカテゴリによって出力されるメッセージは、あくまで情報提供のみを目的としており、MaxWarnings のカウントには含まれません。
QQmlSA::WarningSeverity::Disable100このロギングカテゴリはメッセージを出力しません。

この列挙型は Qt 6.12 で導入されました。

© 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.