summaryrefslogtreecommitdiff
path: root/mnv/runtime/indent/testdir/vb.ok
diff options
context:
space:
mode:
Diffstat (limited to 'mnv/runtime/indent/testdir/vb.ok')
-rw-r--r--mnv/runtime/indent/testdir/vb.ok176
1 files changed, 176 insertions, 0 deletions
diff --git a/mnv/runtime/indent/testdir/vb.ok b/mnv/runtime/indent/testdir/vb.ok
new file mode 100644
index 0000000000..13d6b3b6cc
--- /dev/null
+++ b/mnv/runtime/indent/testdir/vb.ok
@@ -0,0 +1,176 @@
+' mnv: filetype=vb shiftwidth=4 expandtab
+'
+' START_INDENT
+#Const Debug = False
+
+#If Win64 Then
+' Win64=true, Win32=true, Win16=false
+#ElseIf Win32 Then
+' Win32=true, Win16=false
+#Else
+' Win16=true
+#End If
+
+Public Type GEmployeeRecord ' Create user-defined type.
+ ID As Integer ' Define elements of data type.
+ Name As String * 20
+ Address As String * 30
+ Phone As Long
+ HireDate As Date
+End Type
+
+Public Enum InterfaceColors
+ icMistyRose = &HE1E4FF&
+ icSlateGray = &H908070&
+ icDodgerBlue = &HFF901E&
+ icDeepSkyBlue = &HFFBF00&
+ icSpringGreen = &H7FFF00&
+ icForestGreen = &H228B22&
+ icGoldenrod = &H20A5DA&
+ icFirebrick = &H2222B2&
+End Enum
+
+Enum SecurityLevel
+ IllegalEntry = -1
+ SecurityLevel1 = 0
+ SecurityLevel2 = 1
+End Enum
+
+Public Function TestConditional (number As Integer, ext As String) As Boolean
+ Dim inRange As Boolean
+
+ Select Case number
+ Case <= 0
+ inRange = False
+ Case > 10
+ inRange = False
+ Case Else
+ inRange = True
+ End Select
+
+ ' This is a special case identified in the indent script.
+ Select Case number
+ End Select
+
+ If ext = ".xlm" Then
+ If inRange Then
+ TestConditional = True
+ Else
+ TestConditional = False
+ End If
+ ElseIf ext = ".xlsx" Then
+ If inRange Then
+ TestConditional = False
+ Else
+ TestConditional = True
+ End If
+ Else
+ TestConditional = False
+ End If
+End Function
+
+Private Sub TestIterators (lLimit As Integer, uLimit As Integer)
+ Dim a() As Variant
+ Dim elmt As Variant
+ Dim found As Boolean
+ Dim indx As Integer
+ Const specialValue As Integer = 5
+
+ If uLimit < lLimit Then
+ Exit Sub
+ End If
+
+ ReDim a(lLimit To uLimit)
+ For indx=lLimit To Ulimit
+ a(indx) = 2 * indx
+ Next indx
+
+ found = False
+ For Each elmt in a
+ If elmt = specialValue Then
+ found = True
+ End If
+ Next elmt
+
+ If found then
+ indx = uLimit
+ Do While indx >= lLimit
+ indx = indx - 1
+ Loop
+ End If
+
+End Sub
+
+Public Sub TestMultiline (cellAddr As String, rowNbr As Long)
+ Dim rng As Range
+
+ Set rng = Range(cellAddr)
+
+ ' Line continuation is implemented as a two-character sequence-
+ ' whitespace followed by underscore.
+ With rng
+ .Cells(1,1).Value = _
+ "Line 1 of multiline string; " & _
+ "Line 2 of multiline string; " & _
+ "Line 3 of multiline string"
+ End With
+
+ ' This code block omits the leading whitespace character and so
+ ' the trailing underscore will not be treated as line continuation.
+ With rng
+ .Cells(1,1).Value =_
+ "Line 1 of multiline string; " &_
+ "Line 2 of multiline string; " &_
+ "Line 3 of multiline string"
+ End With
+
+ ' The following lines have whitespace after the underscore character.
+ ' This is contrary to Microsoft documentation but it is reported that
+ ' some Microsoft editors allow it and will still treat the statement
+ ' as line-continued.
+ With rng
+ rng.Cells(1,1).Value = _
+ "Line 1 of multiline string; " & _
+ "Line 2 of multiline string; " & _
+ "Line 3 of multiline string"
+ End With
+
+End Sub
+
+Private Sub TestStmtLabel()
+ GoTo stmtLabel
+
+ ' Statement labels are never indented
+stmtLabel:
+
+End Sub
+
+Public Static Function TestStatic(addend As Integer)
+ Dim Integer accumulator
+ accumulator = accumulator + addend
+ TestStatic = accumulator
+End Function
+
+Friend Function TestFriend(addend As Integer)
+ Static Integer accumulator
+ accumulator = accumulator + addend
+ TestFriend = accumulator
+End Function
+
+Sub TestTypeKeyword()
+ Type EmployeeRecord ' Create user-defined type.
+ ID As Integer ' Define elements of data type.
+ Name As String * 20
+ Address As String * 30
+ Phone As Long
+ HireDate As Date
+ End Type
+ Dim varType As EmployeeRecord
+End Sub
+
+Sub TestDateLiteralAfterLineContinuation
+ Dim birthday as Date
+ birthday = _
+ #January 1, 1901#
+End Sub
+' END_INDENT