【Swift】ターミナル環境のREPLコマンド

#この記事について
ターミナルでSwiftを実行する環境でのコマンド一覧を、何の役に立つかは知りませんがまとめてみました。
自分のための覚え書きにでもしたいと思います。
翻訳は、使ったコマンドが出た時に追記していきたい所存です。

#コマンド一覧
- **apropos** : List debugger commands related to a word or subject.

- **breakpoint** : Commands for operating on breakpoints (see 'help b' forshorthand.)

- **bugreport** : Commands for creating domain-specific bug reports.

- **command** : Commands for managing custom LLDB commands.

- **disassemble** : Disassemble specified instructions in the current target.  Defaults to the current function for the current thread and stack frame.

- **expression** : Evaluate an expression on the current thread.  Displays any returned value with LLDB's default formatting.

- **frame** : Commands for selecting and examing the current thread's stack frames.

- **gdb-remote** : Connect to a process via remote GDB server.  If no host is specifed, localhost is assumed.

- **gui** : Switch into the curses based GUI mode.

- **help** : Show a list of all debugger commands, or give details about a specific command.

- **kdp-remote** : Connect to a process via remote KDP server.  If no UDP port is specified, port 41139 is assumed.

- **language** : Commands specific to a source language.

- **log** : Commands controlling LLDB internal logging.

- **memory** : Commands for operating on memory in the current target process.

- **platform** : Commands to manage and create platforms.

- **plugin** : Commands for managing LLDB plugins.

- **process** : Commands for interacting with processes on the current platform.

- **quit** : Quit the LLDB debugger.

- **register** : Commands to access registers for the current thread and stack frame.

- **script** : Invoke the script interpreter with provided code and display any results.  Start the interactive interpreter if no code is supplied.

- **settings** : Commands for managing LLDB settings.

- **source** : Commands for examining source code described by debug information for the current target process.

- **target** : Commands for operating on debugger targets.

- **thread** : Commands for operating on one or more threads in the current process.

- **type** : Commands for operating on the type system.

- **version** : Show the LLDB debugger version.

- **watchpoint** : Commands for operating on watchpoints. 

##Current command abbreviations (type ':help command alias' for more info):

- **add-dsym** : ('target symbols add')  Add a debug symbol file to one of the target's current modules by specifying a path to a debug symbols file, or using the options to specify a module to download symbols for.

- **attach** : ('_regexp-attach')  Attach to process by ID or name.

- **b** : ('_regexp-break')  Set a breakpoint using one of several shorthand formats.

- **bt** : ('_regexp-bt')  Show the current thread's call stack.  Any numeric argument displays at most that many frames.  The argument 'all' displays all threads.

- **c** : ('process continue')  Continue execution of all threads in the current process.

- **call** : ('expression --')  Evaluate an expression on the current thread. Displays any returned value with LLDB's default formatting.

- **continue** : ('process continue')  Continue execution of all threads in the current process.

- **detach** : ('process detach')  Detach from the current target process.

- **di** : ('disassemble')  Disassemble specified instructions in the current target.  Defaults to the current function for the current thread and stack frame.

- **dis** : ('disassemble')  Disassemble specified instructions in the current target.  Defaults to the current function for the current thread and stack frame.

- **display** : ('_regexp-display')  Evaluate an expression at every stop (see 'help target stop-hook'.)

- **down** : ('_regexp-down')  Select a newer stack frame.  Defaults to moving one frame, a numeric argument can specify an arbitrary number.

- **env** : ('_regexp-env')  Shorthand for viewing and setting environment variables.

- **exit** : ('quit')  Quit the LLDB debugger.

- **f** : ('frame select')  Select the current stack frame by index from within the current thread (see 'thread backtrace'.)

- **file** : ('target create')  Create a target using the argument as the main executable.

- **finish** : ('thread step-out')  Finish executing the current stack frame and stop after returning.  Defaults to current thread unless specified.

- **image** : ('target modules')  Commands for accessing information for one or more target modules.

- **j** : ('_regexp-jump')  Set the program counter to a new address.

- **jump** : ('_regexp-jump')  Set the program counter to a new address.

- **kill** : ('process kill')  Terminate the current target process.

- **l** : ('_regexp-list')  List relevant source code using one of several shorthand formats.

- **list** : ('_regexp-list')  List relevant source code using one of several shorthand formats.

- **n** : ('thread step-over')  Source level single step, stepping over calls.  Defaults to current thread unless specified.

- **next** : ('thread step-over')  Source level single step, stepping over calls.  Defaults to current thread unless specified.

- **nexti** : ('thread step-inst-over')  Instruction level single step, stepping over calls.  Defaults to current thread unless specified.

- **ni** : ('thread step-inst-over')  Instruction level single step, stepping over calls.  Defaults to current thread unless specified.

- **p** : ('expression --')  Evaluate an expression on the current thread. Displays any returned value with LLDB's default formatting.

- **parray** : ('expression -Z %1   --')  Evaluate an expression on the current thread.  Displays any returned value with LLDB's default formatting.

- **po** : Evaluate an expression on the current thread.  Displays any returned value with formatting controlled by the type's author.

- **poarray** : ('expression -O -Z %1    --')  Evaluate an expression on the current thread.  Displays any returned value with LLDB's default formatting.

- **print** : ('expression --')  Evaluate an expression on the current thread. Displays any returned value with LLDB's default formatting.

- **q** : ('quit')  Quit the LLDB debugger.

- **r** : ('process launch -X true --')  Launch the executable in the debugger.

- **rbreak** : ('breakpoint set -r %1')  Sets a breakpoint or set of breakpoints in the executable.

- **repl** : ('expression -r  -- ')  Evaluate an expression on the current thread.  Displays any returned value with LLDB's default formatting.

- **run** : ('process launch -X true --')  Launch the executable in the debugger.

- **s** : ('thread step-in')  Source level single step, stepping into calls.  Defaults to current thread unless specified.

- **si** : ('thread step-inst')  Instruction level single step, stepping into calls.  Defaults to current thread unless specified.

- **sif** : Step through the current block, stopping if you step directly into a function whose name matches the TargetFunctionName.

- **step** : ('thread step-in')  Source level single step, stepping into calls.  Defaults to current thread unless specified.

- **stepi** : ('thread step-inst')  Instruction level single step, stepping into calls.  Defaults to current thread unless specified.

- **t** : ('thread select')  Change the currently selected thread.

- **tbreak** : ('_regexp-tbreak')  Set a one-shot breakpoint using one of several shorthand formats.

- **undisplay** : ('_regexp-undisplay')  Stop displaying expression at every stop (specified by stop-hook index.)

- **up** : ('_regexp-up')  Select an older stack frame.  Defaults to moving one frame, a numeric argument can specify an arbitrary number.

- **x** : ('memory read')  Read from the memory of the current target process.

#最後に
helpコマンドで表示される内容を転記しただけですが、いつか役立つ日が来ることを祈って。