4D v16.3

メソッド連鎖エリア

ホーム

 
4D v16.3
メソッド連鎖エリア

メソッド連鎖エリア  


 

 


1つのメソッドから他のメソッドが呼び出される場合があります。さらにそれらがその他のメソッドを呼び出す場合もあります。このため、デバッグ処理中には、メソッドの連鎖、つまり呼び出しチェーンを表示しておくと非常に便利です。メソッド連鎖エリアはデバッグウィンドウの上部右側にあり、この便利な機能を提供しています。
このエリアは、階層リストを使用して表示されます。次の図は、メソッド連鎖エリアの例を示しています:

  • それぞれのメインレベルの項目は、メソッドの名前です。最も上にある項目は、現在トレースしているメソッド、次のメインレベルの項目は呼び出し元のメソッド(現在トレースしているメソッドを呼び出したメソッド)、その次の項目は呼び出し元のメソッドの呼び出し元メソッド、等のように続きます。この例では、メソッドM_BitTestDemoがトレースされています。このメソッドは、メソッドDE_LInitializeによって呼び出され、これはDE_DebugDemoによって呼び出されています。
  • メソッド連鎖エリアにあるメソッドの名前をダブルクリックすると、呼び出し元のメソッドのソースコードがソースコードエリアに表示されます。(実行ポイントは移動しません。)
    このようにすると、呼び出し元のメソッドが呼び出されたメソッドへの呼び出しをどのように実行したか、すばやく確認することができます。このようにして、呼び出し連鎖のあらゆる段階を検証することができます。
  • メソッド名の隣にあるノードアイコンをクリックすると、メソッドのパラメータ($1,$2...)およびオプションの関数結果($0)のリストが拡張、または縮小されます。値はエリアの右側に表示されます。右側の矢印にある値をクリックすると、パラメータや関数の結果の値を変更することができます。この図では、以下の通りです:
    1. M_BitTestDemoメソッドは、パラメータを受け取っていません。
    2. M_BitTestDemoメソッドの$0は現在未定義です。これは、メソッドが$0に値を割り当てていないためです(メソッドがこの割り当てをまだ実行していないか、メソッドがサブルーチンであり、関数ではないことが原因です)。
    3. DE_LInitializeメソッドは、DE_DebugDemoメソッドから3つのパラメータを受け取ります。$1は[Customers]テーブルへのポインタ、$2は[Customers]Companyフィールドへのポインタ、$3は値が"Z"の英数字パラメータです。
  • メソッドのパラメータリストを展開すれば、パラメータや関数の結果をカスタムウォッチエリアにドラッグ&ドロップすることができます。



参照 

ウォッチエリア
カスタムウォッチエリア
ソースコードエリア
デバッガ
デバッガのショートカット

 
プロパティ 

プロダクト: 4D
テーマ: デバッグ

 
履歴 

 
ARTICLE USAGE

ランゲージリファレンス ( 4D v16)
ランゲージリファレンス ( 4D v16.1)
ランゲージリファレンス ( 4D v16.2)
ランゲージリファレンス ( 4D v16.3)