2016-07-12 6 views
8

ghciに特定のタイプのshowではなくカスタム印刷機能を使用させる方法はありますか?より一般的な質問:インタラクティブモードでライブラリをできるだけ使用可能にするための一般的なガイドラインは何ですか?ありがとう。ghciで綺麗に印刷

答えて

7

--interactive-printフラグを使用して、任意の制限Cに対して、タイプがのスコープ内の任意の名前を付けて、きれいなカスタム印刷機能を指定できます。 (詳細については、ドキュメントのSection 2.4.9を参照してください。)

ghci --interactive-print=MyModule.prettyPrint 

これは、あなた自身の型クラスから独自の関数を指定できることを意味します。そこだけで、特定のタイプのためにこれを行う方法はないが、あなたのカスタムクラスは、常にこれが動作するように、少なくともOverlappingInstances必要になります

instance Show a => PrettyPrint a where prettyPrint = show 

などの代替インスタンスを含めることができます。

関連する問題