VList: Difference between revisions
Content added Content deleted
(→{{header|Perl 6}}: rewrite method gist, forget about the warning, it did work, my bad ..) |
m (→{{header|Perl 6}}: insignificant shortening) |
||
Line 856: | Line 856: | ||
method cons(vEle \a --> vList) { # method to add an element to the front |
method cons(vEle \a --> vList) { # method to add an element to the front |
||
if not self.base.ele.Bool { # probably faster than .elems ? |
|||
self.base.ele.push: a ; |
self.base.ele.push: a ; |
||
return self; |
return self; |
||
⚫ | |||
⚫ | |||
my \s = vSeg.new(next => self.base, ele => flat Nil xx L2offset, a); |
|||
⚫ | |||
} |
} |
||
self.base.ele[--self.offset] = a; |
|||
⚫ | |||
my vEle @ele = Nil xx l2 ; |
|||
@ele[l2-1] = a ; |
|||
my \s = vSeg.new; |
|||
s.next = self.base; |
|||
s.ele = @ele; |
|||
⚫ | |||
} |
|||
⚫ | |||
self.base.ele[self.offset] = a; |
|||
return self |
return self |
||
} |
} |