1
=item ResizablePMCArray.list
3
This version of list morphs a ResizablePMCArray into a List.
7
.namespace ['ResizablePMCArray']
8
.sub 'list' :method :subid('')
9
## this code morphs a ResizablePMCArray into a List
10
## without causing a clone of any of the elements
11
$P0 = new 'ResizablePMCArray'
12
splice $P0, self, 0, 0
15
splice self, $P0, 0, 0
20
## special method to cast Parrot String into Rakudo Str.
32
Return the number of required and optional parameters for a Block.
33
Note that we currently do this by adding the method to Parrot's
34
"Sub" PMC, so that it works for non-Rakudo subs.
40
$P0 = inspect self, "pos_required"
41
$P1 = inspect self, "pos_optional"
48
# work around a parrot bug.
55
# Twiddle MultiSub - at most of these can go away when it stops inheriting
58
.namespace ['MultiSub']
70
Gets the name of the routine.
75
# We'll just use the name of the first candidate.
87
Return an iterator that iterates over a Class' attributes.
88
If the Class object has a @!attribute_list property, use
89
that as the order of attributes, otherwise introspect the
90
class and use its list. (As of Parrot 1.4.0 we can't
91
always introspect the class directly, as the order of
92
attributes in the class isn't guaranteed.)
97
.sub 'attriter' :method
98
$P0 = getprop '@!attribute_list', self
99
unless null $P0 goto have_list
100
$P0 = inspect self, 'attributes'