我有以下代码:
bool b = (bool)(flag & FLAG1);
了解每种类型如何相互依赖。
我收到以下错误消息:
type cellInfo('a) = {
index: int,
column: column('a),
id: string
};
type cellInfoFn('a) = cellInfo('a) => ReasonReact.reactElement;
type column('a) = {
header: string,
accessor: accessor('a),
id: option(string),
cell: cellInfoFn('a),
};
我如何处理相互递归的类型定义?
答案 0 :(得分:5)
相互递归定义必须用and
分隔。这适用于let
定义和type
定义:
type cellInfo('a) = {
index: int,
column: column('a),
id: string
}
and cellInfoFn('a) = cellInfo('a) => ReasonReact.reactElement
and column('a) = {
header: string,
accessor: accessor('a),
id: option(string),
cell: cellInfoFn('a),
};