next up previous contents
Next: スパイ制御機能 Up: 2.3.2 トレーサの各コマンドの詳細 Previous: 実行制御コマンド

デフォルトトレースフラグ設定機能

ある特定の述語を指定して, その述語を実行する全てのゴールのトレース フラグをデフォルトで設定することができる.

n 述語
その述語を実行するゴールがデフォルトでトレース offとなる.
t 述語
その述語を実行するゴールがデフォルトでトレース onとなる.

述語の指定方法には以下に示す5通りがある.

デフォルトトレースフラグ設定の例を以下に示す.

% subset -t                                                           1
   1 CALL:main:main? 
   1 REDU:main:main :-
   2   0:+subset(yes,[3,1],[1,3,5],_3)
   3   1:+io:outstream([print(_3),nl])? n member                      5
	Default trace reset on predicate main:member/3
   1 REDU:main:main :-
   2   0:+subset(yes,[3,1],[1,3,5],_3)
   3   1:+io:outstream([print(_3),nl])? 
   2 CALL:main:subset(yes,[3,1],[1,3,5],_3)?                         10
   2 REDU:main:subset(yes,[3,1],[1,3,5],_3) :-
   4   0:-member(3,[1,3,5],_11)
   5   1:+subset(_11,[1],[1,3,5],_3)? 
   5 CALL:main:subset(yes,[1],[1,3,5],_3)? 
   5 REDU:main:subset(yes,[1],[1,3,5],_3) :-                         15
   6   0:-member(1,[1,3,5],_1C)
   7   1:+subset(_1C,[],[1,3,5],_3)? 
   7 CALL:main:subset(yes,[],[1,3,5],_3)? 
   7 REDU:main:subset(yes,[],[1,3,5],yes)? 
   3 CALL:io:outstream([print(yes),nl])? s                           20
yes
%

5行目で, 述語 main:member/3のトレースフラグを offに している. このことによりそれ以降は, 述語 main:
[1]member/3
のトレースは行なわれない.



next up previous contents
Next: スパイ制御機能 Up: 2.3.2 トレーサの各コマンドの詳細 Previous: 実行制御コマンド



KLIC