"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "src/core.c/Uni.pm6" between
rakudo-2020.09.tar.gz and rakudo-2020.10.tar.gz

About: Rakudo is a compiler for the Raku Pogramming Language (formerly known as Perl 6).

Uni.pm6  (rakudo-2020.09):Uni.pm6  (rakudo-2020.10)
my class NFC is repr('VMArray') is array_type(uint32) { ... } my class NFC is repr('VMArray') is array_type(uint32) { ... }
my class NFD is repr('VMArray') is array_type(uint32) { ... } my class NFD is repr('VMArray') is array_type(uint32) { ... }
my class NFKC is repr('VMArray') is array_type(uint32) { ... } my class NFKC is repr('VMArray') is array_type(uint32) { ... }
my class NFKD is repr('VMArray') is array_type(uint32) { ... } my class NFKD is repr('VMArray') is array_type(uint32) { ... }
my class Uni does Positional[uint32] does Stringy is repr('VMArray') is array_ty pe(uint32) { my class Uni does Positional[uint32] does Stringy is repr('VMArray') is array_ty pe(uint32) {
method new(*@codes) {
my $uni := nqp::create(self); multi method new(Uni:) { nqp::create(self) }
my int $n = @codes.elems; multi method new(Uni: *@codes) {
loop (my int $i = 0; $i < $n; $i = $i + 1) { @codes.elems; # reify and test for lazy sequences
nqp::bindpos_i($uni, $i, @codes.AT-POS($i)); my $uni := nqp::create(self);
} my $codepoints := nqp::getattr(@codes,List,'$!reified');
nqp::while(
nqp::elems($codepoints),
nqp::push_i($uni,nqp::shift($codepoints))
);
$uni $uni
} }
# array[uint32] candidate added in core_epilogue
my class UniList does PredictiveIterator { my class UniList does PredictiveIterator {
has $!uni; has $!uni;
has int $!els; has int $!els;
has int $!i; has int $!i;
method !SET-SELF(\uni) { method !SET-SELF(\uni) {
$!uni := uni; $!uni := uni;
$!i = -1; $!i = -1;
$!els = nqp::elems(uni); $!els = nqp::elems(uni);
self self
 End of changes. 2 change blocks. 
6 lines changed or deleted 13 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)