mirror of
https://github.com/fluencelabs/assemblyscript
synced 2025-06-22 19:21:47 +00:00
Implement String#split (#301)
This commit is contained in:
@ -132,7 +132,7 @@
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 16)
|
||||
(i32.const 239)
|
||||
(i32.const 244)
|
||||
(i32.const 4)
|
||||
)
|
||||
(unreachable)
|
||||
|
@ -225,7 +225,7 @@
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 16)
|
||||
(i32.const 239)
|
||||
(i32.const 244)
|
||||
(i32.const 4)
|
||||
)
|
||||
(unreachable)
|
||||
|
@ -7930,7 +7930,7 @@
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 1616)
|
||||
(i32.const 106)
|
||||
(i32.const 110)
|
||||
(i32.const 4)
|
||||
)
|
||||
(unreachable)
|
||||
@ -8104,7 +8104,7 @@
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 1616)
|
||||
(i32.const 264)
|
||||
(i32.const 269)
|
||||
(i32.const 4)
|
||||
)
|
||||
(unreachable)
|
||||
|
@ -12670,7 +12670,7 @@
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 1616)
|
||||
(i32.const 54)
|
||||
(i32.const 58)
|
||||
(i32.const 4)
|
||||
)
|
||||
(unreachable)
|
||||
@ -12764,7 +12764,7 @@
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 1616)
|
||||
(i32.const 106)
|
||||
(i32.const 110)
|
||||
(i32.const 4)
|
||||
)
|
||||
(unreachable)
|
||||
@ -13051,7 +13051,7 @@
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 1616)
|
||||
(i32.const 264)
|
||||
(i32.const 269)
|
||||
(i32.const 4)
|
||||
)
|
||||
(unreachable)
|
||||
|
@ -13,6 +13,8 @@
|
||||
(global $~lib/internal/allocator/AL_SIZE i32 (i32.const 8))
|
||||
(global $~lib/internal/allocator/AL_MASK i32 (i32.const 7))
|
||||
(global $~lib/internal/allocator/MAX_SIZE_32 i32 (i32.const 1073741824))
|
||||
(global $~lib/internal/arraybuffer/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/internal/arraybuffer/MAX_BLENGTH i32 (i32.const 1073741816))
|
||||
(global $~lib/internal/string/HEADER_SIZE i32 (i32.const 4))
|
||||
(global $~lib/internal/string/MAX_LENGTH i32 (i32.const 536870910))
|
||||
(global $~lib/internal/hash/FNV_OFFSET i32 (i32.const -2128831035))
|
||||
|
@ -2365,7 +2365,7 @@
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 72)
|
||||
(i32.const 450)
|
||||
(i32.const 510)
|
||||
(i32.const 8)
|
||||
)
|
||||
(unreachable)
|
||||
@ -2440,7 +2440,7 @@
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 72)
|
||||
(i32.const 454)
|
||||
(i32.const 514)
|
||||
(i32.const 8)
|
||||
)
|
||||
(unreachable)
|
||||
@ -2559,7 +2559,7 @@
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 72)
|
||||
(i32.const 466)
|
||||
(i32.const 526)
|
||||
(i32.const 8)
|
||||
)
|
||||
(unreachable)
|
||||
@ -2645,7 +2645,7 @@
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 72)
|
||||
(i32.const 475)
|
||||
(i32.const 535)
|
||||
(i32.const 4)
|
||||
)
|
||||
(unreachable)
|
||||
|
@ -2911,7 +2911,7 @@
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 72)
|
||||
(i32.const 450)
|
||||
(i32.const 510)
|
||||
(i32.const 8)
|
||||
)
|
||||
(unreachable)
|
||||
@ -2988,7 +2988,7 @@
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 72)
|
||||
(i32.const 454)
|
||||
(i32.const 514)
|
||||
(i32.const 8)
|
||||
)
|
||||
(unreachable)
|
||||
@ -3132,7 +3132,7 @@
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 72)
|
||||
(i32.const 466)
|
||||
(i32.const 526)
|
||||
(i32.const 8)
|
||||
)
|
||||
(unreachable)
|
||||
@ -3225,7 +3225,7 @@
|
||||
(call $~lib/env/abort
|
||||
(i32.const 0)
|
||||
(i32.const 72)
|
||||
(i32.const 475)
|
||||
(i32.const 535)
|
||||
(i32.const 4)
|
||||
)
|
||||
(unreachable)
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -51,6 +51,8 @@ assert("abc".padEnd(8, "abc") == "abcabcab");
|
||||
|
||||
assert("".indexOf("") == 0);
|
||||
assert("".indexOf("hi") == -1);
|
||||
assert("a".indexOf("a") == 0);
|
||||
assert(str.indexOf(str) == 0);
|
||||
assert(str.indexOf("") == 0);
|
||||
assert(str.indexOf(",") == 2);
|
||||
assert(str.indexOf("x") == -1);
|
||||
@ -131,6 +133,41 @@ assert("a".repeat(5) == "aaaaa");
|
||||
assert("a".repeat(6) == "aaaaaa");
|
||||
assert("a".repeat(7) == "aaaaaaa");
|
||||
|
||||
var sa: string[];
|
||||
|
||||
sa = "".split();
|
||||
assert(sa.length == 1 && sa[0] == "");
|
||||
sa = "".split("");
|
||||
assert(sa.length == 0);
|
||||
sa = "".split(",");
|
||||
assert(sa.length == 1 && sa[0] == "");
|
||||
sa = "a,b,c".split(".");
|
||||
assert(sa.length == 1 && sa[0] == "a,b,c");
|
||||
sa = "a,b,c".split(",");
|
||||
assert(sa.length == 3 && sa[0] == "a" && sa[1] == "b" && sa[2] == "c");
|
||||
sa = "a, b, c".split(", ");
|
||||
assert(sa.length == 3 && sa[0] == "a" && sa[1] == "b" && sa[2] == "c");
|
||||
sa = "a,b,,c".split(",");
|
||||
assert(sa.length == 4 && sa[0] == "a" && sa[1] == "b" && sa[2] == "" && sa[3] == "c");
|
||||
sa = ",a,b,c".split(",");
|
||||
assert(sa.length == 4 && sa[0] == "" && sa[1] == "a" && sa[2] == "b" && sa[3] == "c");
|
||||
sa = "a,b,c,".split(",");
|
||||
assert(sa.length == 4 && sa[0] == "a" && sa[1] == "b" && sa[2] == "c" && sa[3] == "");
|
||||
sa = "abc".split("");
|
||||
assert(sa.length == 3 && sa[0] == "a" && sa[1] == "b" && sa[2] == "c");
|
||||
sa = "abc".split("", 0);
|
||||
assert(sa.length == 0);
|
||||
sa = "abc".split("", 1);
|
||||
assert(sa.length == 1 && sa[0] == "a");
|
||||
sa = "a,b,c".split(",", 1);
|
||||
assert(sa.length == 1 && sa[0] == "a");
|
||||
sa = "abc".split("", 4);
|
||||
assert(sa.length == 3 && sa[0] == "a" && sa[1] == "b" && sa[2] == "c");
|
||||
sa = "abc".split("", -1);
|
||||
assert(sa.length == 3 && sa[0] == "a" && sa[1] == "b" && sa[2] == "c");
|
||||
sa = "a,b,c".split(",", -1);
|
||||
assert(sa.length == 3 && sa[0] == "a" && sa[1] == "b" && sa[2] == "c");
|
||||
|
||||
assert(itoa32(0) == "0");
|
||||
assert(itoa32(1) == "1");
|
||||
assert(itoa32(8) == "8");
|
||||
|
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user