1+ ' SYNTAX TEST "source.vba" "loop for"
2+
3+ ' Normal people for loops
4+
5+ Sub Foo ()
6+ ' Supports omitting Step.
7+ For i = 1 To 10
8+ ' ^^^^^^^^^^^^^^^ meta.flow.for-loop.vba
9+ ' ^^^^^^^^^^^ meta.for-iterator-loop.vba
10+ ' ^ variable.other.readwrite.vba
11+ ' ^ keyword.operator.assignment.vba
12+ ' ^ ^^ constant.numeric.vba
13+ ' ^^ keyword.control.flow.loop.vba
14+ Next i
15+ ' ^^^^^^ meta.flow.for-loop.vba
16+ ' ^^^^ keyword.control.flow.loop.vba
17+
18+ ' Supports number literals.
19+ For i = 1 To 10 Step 2
20+ ' ^^^^^^^^^^^^^^^^^^^^^^ meta.flow.for-loop.vba
21+ ' ^^^^^^^^^^^^^^^^^^ meta.for-iterator-loop.vba
22+ ' ^ variable.other.readwrite.vba
23+ ' ^ keyword.operator.assignment.vba
24+ ' ^ ^^ ^ constant.numeric.vba
25+ ' ^^ ^^^^ keyword.control.flow.loop.vba
26+ Next i
27+ ' ^^^^^^ meta.flow.for-loop.vba
28+ ' ^^^^ keyword.control.flow.loop.vba
29+
30+ ' Supports negative number literals.
31+ For i = -1 To -10 Step -2
32+ ' ^^^^^^^^^^^^^^^^^^^^^^^^^ meta.flow.for-loop.vba
33+ ' ^^^^^^^^^^^^^^^^^^^^^ meta.for-iterator-loop.vba
34+ ' ^ variable.other.readwrite.vba
35+ ' ^ keyword.operator.assignment.vba
36+ ' ^^ ^^^ ^^ constant.numeric.vba
37+ ' ^^ ^^^^ keyword.control.flow.loop.vba
38+ Next i
39+ ' ^^^^^^ meta.flow.for-loop.vba
40+ ' ^^^^ keyword.control.flow.loop.vba
41+
42+ ' Supports properties.
43+ For i = .Low To .High Step .Step
44+ ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.flow.for-loop.vba
45+ ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.for-iterator-loop.vba
46+ ' ^ variable.other.readwrite.vba
47+ ' ^^^^ ^^^^^ ^^^^^ meta.variable-or-property.vba
48+ ' ^ keyword.operator.assignment.vba
49+ ' ^^ ^^^^ keyword.control.flow.loop.vba
50+ Next i
51+ ' ^^^^^^ meta.flow.for-loop.vba
52+ ' ^^^^ keyword.control.flow.loop.vba
53+
54+ ' Supports functions.
55+ For i = .GetLow() To .GetHigh() Step .GetStep()
56+ Next i
57+ ' ^^^^^^ meta.flow.for-loop.vba
58+ ' ^^^^ keyword.control.flow.loop.vba
59+
60+ ' Simple for each.
61+ For Each obj In collection
62+ ' ^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.flow.for-loop.vba
63+ ' ^^^^^^^^^^^^^^^^^^^^^^ meta.for-each-loop.vba
64+ ' ^^^ ^^^^^^^^^^ meta.variable-or-property.vba
65+ ' ^^ keyword.control.flow.loop.vba
66+ Next obj
67+ ' ^^^^^^^^ meta.flow.for-loop.vba
68+ ' ^^^^ keyword.control.flow.loop.vba
69+
70+ ' Supports properties.
71+ For Each obj In .Collection
72+ ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.flow.for-loop.vba
73+ ' ^^^^^^^^^^^^^^^^^^^^^^^ meta.for-each-loop.vba
74+ ' ^^^ ^^^^^^^^^^^ meta.variable-or-property.vba
75+ ' ^^ keyword.control.flow.loop.vba
76+ Next obj
77+ ' ^^^^^^^^ meta.flow.for-loop.vba
78+ ' ^^^^ keyword.control.flow.loop.vba
79+
80+ ' Supports functions.
81+ For Each obj In .Collection ()
82+ ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.flow.for-loop.vba
83+ ' ^^^^^^^^^^^^^^^^^^^^^^^^^ meta.for-each-loop.vba
84+ ' ^^^ meta.variable-or-property.vba
85+ ' ^^ keyword.control.flow.loop.vba
86+ ' ^^^^^^^^^^^^^ meta.function.call.vba
87+ Next obj
88+ ' ^^^^^^^^ meta.flow.for-loop.vba
89+ ' ^^^^ keyword.control.flow.loop.vba
90+
91+ ' Supports normal block things.
92+ For Each obj In collection
93+ For j = 1 To 10
94+ ' ^^^^^^^^^^^^^^^ meta.flow.for-loop.vba
95+ If condition Then DoSomething
96+ ' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.flow.inline-if.vba
97+ Next j
98+
99+ For Each obj In collection
100+ ' ^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.flow.for-loop.vba
101+ Next obj
102+
103+ If condition Then
104+ ' ^^^^^^^^^^^^^^^^^ meta.block-if-else.vba
105+ End If
106+ Next obj
107+ End Sub
108+
109+ ' Line continued tests
110+
111+ Sub Bar ()
112+ For _
113+ ' ^^^ keyword.control.flow.loop.vba
114+ i _
115+ ' ^ variable.other.readwrite.vba
116+ = _
117+ ' ^ keyword.operator.assignment.vba
118+ -2 _
119+ ' ^^ constant.numeric.vba
120+ To _
121+ ' ^^ keyword.control.flow.loop.vba
122+ 10 _
123+ ' ^^ constant.numeric.vba
124+ Step _
125+ ' ^^^^ keyword.control.flow.loop.vba
126+ 20
127+ ' ^^ constant.numeric.vba
128+ Next i
129+ ' ^^^^ keyword.control.flow.loop.vba
130+ End Sub
0 commit comments