diff options
Diffstat (limited to 'mnv/runtime/indent/testdir/vb.ok')
| -rw-r--r-- | mnv/runtime/indent/testdir/vb.ok | 176 |
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 |
