OOP - 如何在 ReasonML 中创建 class
OOP - How does one create a class in ReasonML
我知道在 OCaml 中,可以创建一个 class 执行以下操作:
class stack_of_ints =
object (self)
val mutable the_list = ( [] : int list ) (* instance variable *)
method push x = (* push method *)
the_list <- x :: the_list
end;;
但是,我一直在努力寻找有关如何在 Reason 中执行此操作的文档。谢谢。
类 和对象没有很好的记录,因为与更惯用的方法相比,这些功能增加了很多复杂性(通常)几乎没有什么好处。但是,如果您知道某些东西的 OCaml 语法,您总是可以通过使用在线“Try Reason”游乐场转换它来查看等效的 Reason 是什么。请参阅 your example here,这给了我们这个:
class stack_of_ints = {
as self;
val mutable the_list: list int = []; /* instance variable */
pub push x =>
/* push method */
the_list = [x, ...the_list];
};
我知道在 OCaml 中,可以创建一个 class 执行以下操作:
class stack_of_ints =
object (self)
val mutable the_list = ( [] : int list ) (* instance variable *)
method push x = (* push method *)
the_list <- x :: the_list
end;;
但是,我一直在努力寻找有关如何在 Reason 中执行此操作的文档。谢谢。
类 和对象没有很好的记录,因为与更惯用的方法相比,这些功能增加了很多复杂性(通常)几乎没有什么好处。但是,如果您知道某些东西的 OCaml 语法,您总是可以通过使用在线“Try Reason”游乐场转换它来查看等效的 Reason 是什么。请参阅 your example here,这给了我们这个:
class stack_of_ints = {
as self;
val mutable the_list: list int = []; /* instance variable */
pub push x =>
/* push method */
the_list = [x, ...the_list];
};