Lines Matching refs:l
42 let l:list = [[1], [2], [3]]
43 call assert_equal([1, 2, 3], flatten(l:list))
44 call assert_equal([1, 2, 3], l:list)
47 let l:x = {'foo': 'bar'}
48 call assert_equal([1, 2, l:x, 3], flatten([1, [2, l:x], 3]))
50 call assert_equal('bar', l:x.foo)
52 let l:list = [[1], [2], [3]]
53 call assert_equal([1, 2, 3], flatten(l:list))
55 call assert_equal([1, 2, 3], l:list)
58 let l:x = [1]
59 let l:y = [x]
60 let l:z = flatten(l:y)
61 call assert_equal([1], l:z)
63 let l:x[0] = 2
64 call assert_equal([2], l:x)
65 call assert_equal([1], l:z) " NOTE: primitive types are copied.
66 call assert_equal([1], l:y)
68 let l:x = [2]
69 let l:y = [1, [l:x], 3] " [1, [[2]], 3]
70 let l:z = flatten(l:y, 1)
71 call assert_equal([1, [2], 3], l:z)
72 let l:x[0] = 9
73 call assert_equal([1, [9], 3], l:z) " Reference to l:x is kept.
74 call assert_equal([1, [9], 3], l:y)
76 let l:x = [1]
77 let l:y = [2]
78 call add(x, y) " l:x = [1, [2]]
79 call add(y, x) " l:y = [2, [1, [...]]]
80 call assert_equal([1, 2, 1, 2], flatten(l:x, 2))
81 call assert_equal([2, l:x], l:y)
85 let l = [1, [2, [3, 4]], 5]
86 call assert_equal([1, 2, 3, 4, 5], flattennew(l))
87 call assert_equal([1, [2, [3, 4]], 5], l)
89 call assert_equal([1, 2, [3, 4], 5], flattennew(l, 1))
90 call assert_equal([1, [2, [3, 4]], 5], l)