Debugging (LibreOffice Basic)
Break points
- LibreOffice Basic-IDE: F9 [1]
- Nadat je een break point hebt bereikt: F5 om verder te gaan, en F8 voor step
Stepping
- F8: Step
- Shift-F8: Step over
- Shif-Ctrl-F8: Step out
Watch
LibreOffice Basic-IDE: F7 [2]
Inspection - code
Andre Pythonyak, OO_ME, Listing 216:
Dim v v = Thiscomponent.getTextTables() Print IsObject(v) 'True Print IsNull(v) 'False Print IsEmpty(v) 'False Print IsArray(v) 'False Print IsUnoStruct(v) 'False Print TypeName(v) 'Object MsgBox v.dbg_methods 'This property is discussed later
Iets uitgebreider (eigen fabrikaat):
v = Thiscomponent.getTextTables() if IsObject(v) then methods_txt=v.dbg_methods else methods_txt="<no object>" msgbox "isObject: " & chr(9) & IsObject(v) & chr(9) & "IsNull: " & chr(9) & chr(9) & IsNull(v) & chr(9) & "IsEmpty: " & IsEmpty(v) & chr(13) & _ "IsArray: " & chr(9) & IsArray(v) & chr(9) & "IsUnoStruct: " & chr(9) & IsUnoStruct(v) & chr(9) & "Typename: " & TypeName(v) & chr(13) & chr(13) & _ "Object methods: " & methods_txt
Ik wil dit in een eigen sub stoppen, maar daar krijg ik nog foutmeldingen (nov. 2019):
sub dvb_inspect(v) ' if IsObject(v) then ' methods_txt=v.dbg_methods ' msgbox "Object!" ' ' else ' methods_txt="<no object>" ' end if msgbox "isObject: " & chr(9) & IsObject(v) & chr(9) & "IsNull: " & chr(9) & chr(9) & IsNull(v) & chr(9) & "IsEmpty: " & IsEmpty(v) & chr(13) & _ "IsArray: " & chr(9) & IsArray(v) & chr(9) & "IsUnoStruct: " & chr(9) & IsUnoStruct(v) & chr(9) & "Typename: " & TypeName(v) & chr(13) & chr(13) ' msgbox "isObject: " & chr(9) & IsObject(v) & chr(9) & "IsNull: " & chr(9) & chr(9) & IsNull(v) & chr(9) & "IsEmpty: " & IsEmpty(v) & chr(13) & _ ' "IsArray: " & chr(9) & IsArray(v) & chr(9) & "IsUnoStruct: " & chr(9) & IsUnoStruct(v) & chr(9) & "Typename: " & TypeName(v) & chr(13) & chr(13) & _ ' "Object methods: " & methods_txt end sub
Inspection - IDE
Als je een watch plaatst voor variabelen, kun je daarop dubbelklikken om alle eigenschappen te zien. Da's super, maar het werkt vaak niet: LibreOffice crashet meestal.
List of run-time errors
MRI
MRI (UNO Object Inspection Tool) is een debugging-tool. De meest recente versie is uit 2013, en geeft een syntax-error als je 'm probeert te installeren [3]