1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00

JavaSript backend (early stage)

This commit is contained in:
Alexander Medvednikov
2019-09-14 23:48:30 +03:00
parent 982a162fbf
commit 5cc81b91cb
31 changed files with 1818 additions and 584 deletions

View File

@@ -141,7 +141,7 @@ fn test_slice() {
fn test_push_many() {
mut a := [1, 2, 3]
b := [4, 5, 6]
a << b
a << b
assert a.len == 6
assert a[0] == 1
assert a[3] == 4
@@ -163,42 +163,44 @@ fn test_reverse() {
const (
N = 5
)
)
fn test_fixed() {
mut nums := [4]int
assert nums[0] == 0
assert nums[1] == 0
assert nums[2] == 0
assert nums[3] == 0
nums[1] = 7
assert nums[1] == 7
/*
mut nums := [4]int
assert nums[0] == 0
assert nums[1] == 0
assert nums[2] == 0
assert nums[3] == 0
nums[1] = 7
assert nums[1] == 7
///////
nums2 := [N]int
assert nums2[N - 1] == 0
}
nums2 := [N]int
assert nums2[N - 1] == 0
*/
}
fn modify (numbers mut []int) {
numbers[0] = 777
}
fn test_mut_slice() {
fn test_mut_slice() {
mut n := [1,2,3]
modify(mut n.left(2))
assert n[0] == 777
modify(mut n.right(2))
assert n[2] == 777
modify(mut n.left(2))
assert n[0] == 777
modify(mut n.right(2))
assert n[2] == 777
println(n)
}
fn test_clone() {
nums := [1, 2, 3, 4, 100]
nums2 := nums.clone()
assert nums2.len == 5
assert nums2.str() == '[1, 2, 3, 4, 100]'
assert nums.slice(1, 3).str() == '[2, 3]'
}
nums := [1, 2, 3, 4, 100]
nums2 := nums.clone()
assert nums2.len == 5
assert nums2.str() == '[1, 2, 3, 4, 100]'
assert nums.slice(1, 3).str() == '[2, 3]'
}
fn test_doubling() {
mut nums := [1, 2, 3, 4, 5]
for i := 0; i < nums.len; i++ {