2016-05-19 6 views
8

タイトルはかなり自明です。デバッグ時にトレースを追加することがよくあります。これには、Debug.Traceのインポートを追加する必要があります。しかし、私は同じことをやっているときにそれらを取り除くことを同じように忘れることがあります。開発中に各モジュールのDebug.TraceをインポートするようGHCに依頼できますか?

私が望むのは、インポートを追加する "dev"スイッチです。無効にすると、コードに残っているすべてのトレースを簡単に見つけることができます。

+3

なぜ ' .Utils'モジュールを 'Debug.Trace'から直接呼び出すのではなく、そのモジュールから' trace'のエクスポートを削除します。 – Michael

+0

@マイケル・ホー、それは実際には良い考えです。 IOW、答えが必要です: –

+0

実際には、 "OnOffTrace"モジュールを作ることができます。このモジュールでは、コンパイラフラグがそのエクスポートを決定しました。たぶん、それはHackageを置く価値があります。私はUtilの方が好きです。しかし、理想的なソリューションでは、輸入を一切追加する必要はありません。 –

答えて

4

Debug.Traceから直接ではなく内部の.Utilsモジュールからトレースをインポートし、完了したらそのモジュールからtraceのエクスポートを削除してみませんか?

私は別の方法をとっていますが、別の方法ではtrace _ = idimport Debug.Trace (trace)の間を切り替えることをお勧めします。次に、 traceを使用して、ベンチマークのようなことをやり直すことの間を行き来します(もちろん、traceで惨敗します)。それで、すべての作業が完了したら、traceのエクスポートを削除して、プロジェクトでこれまで使用していた残りの証拠をすべて削除することができます...

関連する問題