我对此进行了测试,似乎事件处理的顺序与源事件中列表的顺序相同。我不认为我可以依赖这个,因为文档只说明:
发出同时发生的事件。严格要求,我们有泄漏。 collect = id
如何使用以下规范创建类似于溢出的函数:
发出顺序事件发生,并保证在第一个和最后一个
之间不会触发其他事件
或者我应该尝试不同的方法?我正在尝试在Reactive-Banana中实现宏功能
答案 0 :(得分:3)
(我是反应香蕉的作者。)
事件处理的顺序似乎与源事件中列表的顺序相同。
这是正确的,你可以依靠它。事实上,它或多或少都来自等式spill . collect = id
。毕竟,要生成标识映射,spill
必须保留事件的顺序,因为collect
已将它们放入列表中。
此外,您可以检查模块Reactive.Banana.Model
(版本0.5中的Reactive.Banana.Internal.Model
)和Reactive.Banana.Combinators
的源代码。总之,它们提供了权威的模型实现。您可以直接检查spill
的行为方式。 (虽然它可能有点混乱,因为模型分为两部分。)
尽管如此,我还是会在文档中添加几句话。