This is an old revision of the document!
Funktionen print_r(), print_rm(), d(), c()
Definitionen
Public Function print_r( _
ByRef iExpression As Variant, _
Optional ByVal iParams As enuPrintRParams = prParamsDefault, _
Optional ByVal iReturn As enuPrintROutputMethode = prConsole _
) As String
Parameter-Liste
Diverse Parameter zur Formatierung der Ausgabe.
iExpression Variable die analysiert werden soll
iParams Diverse Parameter zur Formatierung der Ausgabe. Die verschiedenen Parameter lassen sich kombinieren. Es gibt Parameters, die in Kombination keinen Sinn machen. zB: prStringSingleQuotes+prStringDoubleQuotes. In diesem Fall wird der kleinere Wert genommen. Also nur prStringSingleQuotes. Für die genaue Funktion der Parameter, siehe Kommentar beim Enum enuPrintRParams Wenn man vom Standart einfach etwas weghabenwill, dann kann man das auch als Negativ-Parameter mitgeben
iReturn (Optional) Art der Rückgabe: Standart ist das Direktfenster. Alternativ kann man auch als Rückgabewert der Funktion oder in den Zwieschnepseicher des PCs schreiben. Grad letzteres ist bei gösseren Verschachtelungen Empfehlenswert, da das Direktfenser eine Beschränkte Anzahl Zeilen hat. Die Auswahlen lassen sich auch kombinieren: prConsole+prClipboard.
Enumerator
enuPrintRParams
prNoParams Kein Parameter hat Gültigkeit
prShowType Zeigt den Datentype am Anfangan in <> an
prStringSingleQuotes Setzt Strings in einfache Anführungszeichen. Hat vor prStringDoubleQuotes vorrang.
prStringDoubleQuotes Setzt Strings in doppetle Anführungszeichen
prEscapeDoubleQuotes Setzt wandelt “ innerhalb eines Textes zu ”“. Somit ist der String direkt weiterverwendbar
prEscapeSpaces Tab, Cr, Lf als /t, /r, /n zurückgeben
prEscapeNotPrintablaChars Nicht Druckbare Zeichen als Unicode ausgeben
prParamsDefault = prShowType + prStringSingleQuotes + prEscapeSpaces + prEscapeNotPrintablaChars
enuPrintROutputMethode
Auswahl was mir der Analyse geschehen soll. Die Werte lassen sich mit + kombinieren
prConsole(1) Die Ausgabe wird ins Direktfenster geschrieben
prReturn(2) Die Ausgabe wird als Funktionsrückgabewert zurückgegeben
prClipboard(4) Die Ausgabe wird in den Zwieschenspeicher geschrieben
prMsgBox(8) Die Ausgabe wird als Popup ausgegeben
Rückgabewerte
Falls ein array übergeben wurde, werden die Werte in einem Format angezeigt, das sowohl die Schlüssel als
auch die Elemente darstellt. Für Variablen vom Typ Collection und Dictionary gilt das Gleiche.
Für die restlichen Objekte wird nur der Klassenname angezeigt.
Für alle einfachen Variablen wird der Type und der Inhalt angezeigt
print_rm()
Ruft print_r mit dem Parameter prConsole für eine ganze Liste von Variablen auf
Definitionen
Public Sub print_rm(ParamArray iExpressions() As Variant)
Parameter-Liste
d()
d() ist ein Alais zu print_r() und steht für [D]ebug
Definition
Beschreibung der Komponenten, siehe print_r()
Public Function d( _
ByRef iExpression As Variant, _
Optional ByVal iParams As enuPrintRParams = prParamsDefault, _
Optional ByVal iReturn As enuPrintROutputMethode = prConsole _
) As String
c()
Wie print_r mit den den Parametern prEscapeDoubleQuotes + prStringDoubleQuotes, sowieprReturn + prConsole
\ c steht für [C]ode
Eignet sich, wenn man das Resultat später weiterverwenden will
Definition
'/**
' * Wie print_r mit den den Parametern prEscapeDoubleQuotes + prStringDoubleQuotes, sowieprReturn + prConsole
' * c für [C]ode
' * Eignet sich, wenn man das Resultat später weiterverwenden will
' * @example: c "a" & chr(34) & "b" -> "a""b"
' * @param Variant Zu prüfende Variable
' * @return Variant Nichts oder die Analyse als String
Public Function c(ByRef iExpression As Variant) As String
Ausgewertete Variablen/Obejekte
Im Moment kann die Funktion die folgenden Objekte/Variablen auswerten
Native Variablen: Strings, Datum, Integer, Long, Double, Decimal, Null, Empty
Eindimensionale Array (auch Verschachtelte). Also keine myArray(1, 2)
Collection
Dictionaries
ErrObject
Objekte aus Klassenmodulen (beschränkt auf Public Property Get)
RegExp (Referenz auf 'Microsoft VBScript Regular Expressions 5.5' notwendig)
Mehrdimensionale Arrays (bis zu 4 Dimensionen. Kann beliebig erweitert werden)
Dao.Recordset (Anzahl Einträge sind begrenzt)
TempVars
Properties
Bei allen restlichen Objekten wird nur der Klassenname angegeben
Offene Auswertungen
Die Folgenden will ich demnächst mal noch implementieren.