我想要一份报告清单。报告可以是详细信息或部分类型。
module Data
type Section = { Header: string;
Lines: string list;
Total: string }
type Detail = { State: string;
Divisions: string list;
Sections: Section list }
type Summary = { State: string;
Office: string;
Sections: Section list }
type Report = Detail | Summary
然后在我的代码中,我想做以下事情:
let mutable (reports:Report list) = []
...
reports <- detail::reports
// or
reports <- summary::reports
编译器在第一种情况下抱怨:“表达式应该具有报告类型,但这里有详细类型”,并且在第二种情况下适当地类似。
我是不是因为想做这样的事情而发疯了?我应该以不同的方式思考这个问题吗?因为报告是详细信息或摘要,报告列表不应该接受详细信息或摘要吗?如果不是详细信息或摘要列表,那么报告列表是什么?
谢谢。