m3_hash_unencoded_chars function
int
m3_hash_unencoded_chars(
- dynamic $in_$1
)
Implementation
dc.int m3_hash_unencoded_chars(dc.dynamic $in_$1, ){
late final dc.int h1$2;
dc.int i$1=1;
dc.int h1$1=0;
do {
if((i$1<($in_$1 as dc.String).length)){
final dc.int i$1tmp=(i$1+2);
h1$1=lcoc_core.m3_mix_h1(h1$1, lcoc_core.m3_mix_k1(((($in_$1 as dc.String).codeUnitAt((i$1-1), ))|(4294967295&((($in_$1 as dc.String).codeUnitAt(i$1, ))<<(31&16)))), ), );
i$1=i$1tmp;
continue;
}else{
h1$2=h1$1;
}
break;
} while(true);
late final dc.int h1$3;
if(((($in_$1 as dc.String).length&1)==1)){
h1$3=(h1$2^lcoc_core.m3_mix_k1((($in_$1 as dc.String).codeUnitAt((($in_$1 as dc.String).length-1), )), ));
}else{
h1$3=h1$2;
}
final dc.int y$8183_$AUTO_$1=($in_$1 as dc.String).length;
final dc.int $1=(4294967295&((4294967295&((4294901760&2)*y$8183_$AUTO_$1))+((65535&2)*y$8183_$AUTO_$1)));
return lcoc_core.m3_fmix(h1$3, $1, );
}