此ocaml语法的含义

问题描述 投票:0回答:1

我正在阅读lambdasoup/soup.ml at master · aantron/lambdasoup · GitHub,但我不理解语法。

and 'a node =
  {mutable self   : 'b. 'b node option;
   mutable parent : general node option;
   values         : [ `Element of element_values
                    | `Text of string
                    | `Document of document_values ]}

我不理解'b. 'b node option,如果它是*,那将是一个元组,但这是我第一次与.一起看到,还有为什么分支中的back-tic(例如`Element)?] >

我正在master上阅读lambdasoup / soup.ml·aantron / lambdasoup·GitHub,但是我不理解语法。和'a node = {mutable self:'b。 'b节点选项;可变父级:通用节点...

syntax ocaml
1个回答
1
投票

类型'a . type是在'a中显式多态的类型。因此,您的示例'b . 'b node option显然是一个内容多态的字段。换句话说,分配给该字段的任何值本身都必须是多态的。

© www.soinside.com 2019 - 2024. All rights reserved.