In role Iterator§
有关方法 sink-all,请参阅主要文档 在上下文中
method sink-all(Iterator: --> IterationEnd)
应纯粹为了产生值的副作用而耗尽迭代器,而无需以任何方式实际保存它们。应始终返回 IterationEnd
。如果没有与产生值相关的副作用,则可以通过消耗类将其实现为虚拟无操作。
say (1 .. 1000).iterator.sink-all; # OUTPUT: «IterationEnd»
Iterator 角色将此方法实现为一个循环,该循环调用 pull-one
,直到其耗尽。