当前位置 : 主页 > 网络推广 > seo >

Haskell:从类型中检索第n个值,这是一个元组

来源:互联网 收集:自由互联 发布时间:2021-06-16
我试图从导入的包中访问类型内的一些数据. 该类型由(包作者)声明为: newtype MultiBalanceReport = MultiBalanceReport ([DateSpan] ,[MultiBalanceReportRow] ,MultiBalanceReportTotals ) 我正在尝试使用如下函数提
我试图从导入的包中访问类型内的一些数据.

该类型由(包作者)声明为:

newtype MultiBalanceReport =
  MultiBalanceReport ([DateSpan]
                     ,[MultiBalanceReportRow]
                     ,MultiBalanceReportTotals
                     )

我正在尝试使用如下函数提取类型中的第一个列表:

getDates :: MultiBalanceReport -> [DateSpan]
getDates (date,_,_) = date

但是当我使用该函数时,编译器会抱怨类型不一样:

• Couldn't match expected type ‘MultiBalanceReport’
              with actual type ‘([DateSpan], t7, t8)’

我觉得编译器只是不知道MultiBalanceReport类型的内部细节?我没有导入正确定义类型的包吗?

我是Haskell的新手,如果我使用错误的命名法试图描述我的问题,那就很抱歉.

newtype是带有构造函数的数据类型,因此您需要首先从构造函数MultiBalanceReport中打开元组:

getDates :: MultiBalanceReport -> [DateSpan]
getDates (MultiBalanceReport (date,_,_)) = date
网友评论