在数组中§
有关方法 shift,请参阅主要文档 in context
method shift(Array:) is nodal
移除并返回数组中的第一个项目。如果数组为空,则失败。
示例
my = <a b>;say .shift; # OUTPUT: «a»say .shift; # OUTPUT: «b»say .shift;CATCH ;# OUTPUT: «X::Cannot::Empty: Cannot shift from an empty Array»
在 Buf 角色中§
有关方法 shift,请参阅主要文档 in context
method shift()
移除并返回缓冲区的第一个元素。
my = Buf.new( 1, 1, 2, 3, 5 );say .shift(); # OUTPUT: «1»say .raku; # OUTPUT: «Buf.new(1,2,3,5)»
在独立例程中§
有关子例程 shift,请参阅主要文档 in context
multi shift() is raw
在 Positional
参数上调用方法 shift
。对于实际实现该方法的可变集合(例如 Array
或 Buf
),该方法应该移除并返回第一个元素,或者如果集合为空,则返回 Failure
。
示例
say shift [1,2]; # OUTPUT: «1»
my of Int = [1];say shift ; # OUTPUT: «1»say shift ; # ERROR: «Cannot shift from an empty Array[Int]»