haskell - 如何将 TypeRep 转换为字符串?
问题描述
除了ghci,我可以
import Data.Typeable
typeOf ""
这表明
[Char]
正如预期的那样。typeOf 函数的返回值的实际类型是TypeRep
,我们可以通过
:t typeOf ""
我想(出于调试目的)输出在计算中使用的结果,typeOf
但为此,我需要一个字符串。有没有办法将其转换为可以输入的东西?putStrLn
do
TypeRep
putStrLn
解决方案
TypeRep
是 的别名SomeTypeRep
,它是Show
typeclass的实例。因此,您可以使用以下命令打印:
putStrLn (show (typeOf ""))
或使用print :: Show a => a -> IO ()
which 是putStrLn . show
:
print (typeOf "")
推荐阅读
- css - 如何使用 CSS flexbox 在 Bootstrap 4 下拉项中将图标向右对齐
- visual-studio - Visual Studio 中的 SSIS 2012 引发错误“内存不足”
- javascript - 更改括号外壳名称会导致 WebSocket 连接错误
- mysql - 使用来自同一表列行的值更新表行
- javascript - 如何在开发所见即所得编辑器时使用 execCommand 在任何 html 标签上添加 css 类?
- php - 如何显示数据库中不存在的所有列表记录事件?mysql php
- laravel - 提交时清空购物车内容
- java - com.google.firebase.database.DatabaseException:发现两个 getter 或属性的区分大小写冲突的字段:名称
- c# - Visual Studio 编译错误 - 计算机中缺少 nuget 包,但 nuget restore 说所有包都已安装?
- python - 使用 2 个参数计算列表中单词的函数