2017-05-17 2 views
1

Beim Debuggen SQLite-Abfragen von FMDB in meiner app, habe ich manchmal einen Befehl verwenden, um alle Werte in der aktuellen Zeile der Ergebnismenge zurück:LLDB alias für Swift Befehl

(lldb) po (0..<result.columnCount()).map{result.object(forColumnIndex: $0)!} 

Ich benutze den Namen „Ergebnis "Durchgängig in meiner App, so ändert sich dieser Befehl nie, und natürlich ist es ein wenig mühsam, es jedes Mal zu tippen, wenn ich es verwenden möchte, also wollte ich einen Alias ​​erstellen, aber wenn ich es versuche (ob durch eine .ldbinit Datei oder direkt in der Xcode-Konsole), erhalte ich eine Fehlermeldung:

(lldb) command alias poresult po (0..<result.columnCount()).map{result.object(forColumnIndex: $0)!} 
error: Unable to create requested alias. 

Als ich mich umsah, konnte ich keinen Swift-Code in einem Alias ​​finden, aber ich habe einige Beispiele mit Objective-C gefunden, also nehme ich an, dass es möglich ist.

Was mache ich falsch?

+0

versuchen ersetzen 'po' in Ihrem alias mit' Ausdruck -l swift --' – Alexander

+0

@Alexander Das hat mich erlaubt den Alias ​​zu erstellen, aber die Ausgabe ist nicht sinnvoll. –

+1

Opps, ich meinte 'Ausdruck -O'l swift - ' – Alexander

Antwort

1

In einem Swift-Projekt ist po ein Alias ​​für expression -O -l swift --. Versuchen Sie, die Definition in Ihrem eigenen Alias ​​zu ersetzen.

command alias poresult expression -O -l swift -- (0..<result.columnCount()).map{result.object(forColumnIndex: $0)!} 

allgemeiner:

comamand alias ALIAS_NAME epxression -O -l swift -- YOUR_CODE_HERE