1include "../../include/lldb/Core/PropertiesBase.td"
2
3let Definition = "modulelist" in {
4  def EnableExternalLookup: Property<"enable-external-lookup", "Boolean">,
5    Global,
6    DefaultTrue,
7    Desc<"Control the use of external tools and repositories to locate symbol files. Directories listed in target.debug-file-search-paths and directory of the executable are always checked first for separate debug info files. Then depending on this setting: On macOS, Spotlight would be also used to locate a matching .dSYM bundle based on the UUID of the executable. On NetBSD, directory /usr/libdata/debug would be also searched. On platforms other than NetBSD directory /usr/lib/debug would be also searched.">;
8  def ClangModulesCachePath: Property<"clang-modules-cache-path", "FileSpec">,
9    Global,
10    DefaultStringValue<"">,
11    Desc<"The path to the clang modules cache directory (-fmodules-cache-path).">;
12}
13
14let Definition = "debugger" in {
15  def AutoConfirm: Property<"auto-confirm", "Boolean">,
16    Global,
17    DefaultFalse,
18    Desc<"If true all confirmation prompts will receive their default reply.">;
19  def DisassemblyFormat: Property<"disassembly-format", "FormatEntity">,
20    Global,
21    DefaultStringValue<"{${function.initial-function}{${module.file.basename}`}{${function.name-without-args}}:\\\\n}{${function.changed}\\\\n{${module.file.basename}`}{${function.name-without-args}}:\\\\n}{${current-pc-arrow} }${addr-file-or-load}{ <${function.concrete-only-addr-offset-no-padding}>}: ">,
22    Desc<"The default disassembly format string to use when disassembling instruction sequences.">;
23  def FrameFormat: Property<"frame-format", "FormatEntity">,
24    Global,
25    DefaultStringValue<"frame #${frame.index}: ${ansi.fg.yellow}${frame.pc}${ansi.normal}{ ${module.file.basename}{`${function.name-with-args}{${frame.no-debug}${function.pc-offset}}}}{ at ${ansi.fg.cyan}${line.file.basename}${ansi.normal}:${ansi.fg.yellow}${line.number}${ansi.normal}{:${ansi.fg.yellow}${line.column}${ansi.normal}}}{${function.is-optimized} [opt]}{${frame.is-artificial} [artificial]}\\\\n">,
26    Desc<"The default frame format string to use when displaying stack frame information for threads.">;
27  def NotiftVoid: Property<"notify-void", "Boolean">,
28    Global,
29    DefaultFalse,
30    Desc<"Notify the user explicitly if an expression returns void (default: false).">;
31  def Prompt: Property<"prompt", "String">,
32    Global,
33    DefaultEnumValue<"OptionValueString::eOptionEncodeCharacterEscapeSequences">,
34    DefaultStringValue<"(lldb) ">,
35    Desc<"The debugger command line prompt displayed for the user.">;
36  def ScriptLanguage: Property<"script-lang", "Enum">,
37    Global,
38    DefaultEnumValue<"eScriptLanguagePython">,
39    EnumValues<"OptionEnumValues(g_language_enumerators)">,
40    Desc<"The script language to be used for evaluating user-written scripts.">;
41  def StopDisassemblyCount: Property<"stop-disassembly-count", "SInt64">,
42    Global,
43    DefaultUnsignedValue<4>,
44    Desc<"The number of disassembly lines to show when displaying a stopped context.">;
45  def StopDisassemblyDisplay: Property<"stop-disassembly-display", "Enum">,
46    Global,
47    DefaultEnumValue<"Debugger::eStopDisassemblyTypeNoDebugInfo">,
48    EnumValues<"OptionEnumValues(g_show_disassembly_enum_values)">,
49    Desc<"Control when to display disassembly when displaying a stopped context.">;
50  def StopLineCountAfter: Property<"stop-line-count-after", "SInt64">,
51    Global,
52    DefaultUnsignedValue<3>,
53    Desc<"The number of sources lines to display that come after the current source line when displaying a stopped context.">;
54  def StopLineCountBefore: Property<"stop-line-count-before", "SInt64">,
55    Global,
56    DefaultUnsignedValue<3>,
57    Desc<"The number of sources lines to display that come before the current source line when displaying a stopped context.">;
58  def HighlightSource: Property<"highlight-source", "Boolean">,
59    Global,
60    DefaultTrue,
61    Desc<"If true, LLDB will highlight the displayed source code.">;
62  def StopShowColumn: Property<"stop-show-column", "Enum">,
63    DefaultEnumValue<"eStopShowColumnAnsiOrCaret">,
64    EnumValues<"OptionEnumValues(s_stop_show_column_values)">,
65    Desc<"If true, LLDB will use the column information from the debug info to mark the current position when displaying a stopped context.">;
66  def StopShowColumnAnsiPrefix: Property<"stop-show-column-ansi-prefix", "String">,
67    Global,
68    DefaultStringValue<"${ansi.underline}">,
69    Desc<"When displaying the column marker in a color-enabled (i.e. ANSI) terminal, use the ANSI terminal code specified in this format at the immediately before the column to be marked.">;
70  def StopShowColumnAnsiSuffix: Property<"stop-show-column-ansi-suffix", "String">,
71    Global,
72    DefaultStringValue<"${ansi.normal}">,
73    Desc<"When displaying the column marker in a color-enabled (i.e. ANSI) terminal, use the ANSI terminal code specified in this format immediately after the column to be marked.">;
74  def TerminalWidth: Property<"term-width", "SInt64">,
75    Global,
76    DefaultUnsignedValue<80>,
77    Desc<"The maximum number of columns to use for displaying text.">;
78  def ThreadFormat: Property<"thread-format", "FormatEntity">,
79    Global,
80    DefaultStringValue<"thread #${thread.index}: tid = ${thread.id%tid}{, ${frame.pc}}{ ${module.file.basename}{`${function.name-with-args}{${frame.no-debug}${function.pc-offset}}}}{ at ${ansi.fg.cyan}${line.file.basename}${ansi.normal}:${ansi.fg.yellow}${line.number}${ansi.normal}{:${ansi.fg.yellow}${line.column}${ansi.normal}}}{, name = ${ansi.fg.green}'${thread.name}'${ansi.normal}}{, queue = ${ansi.fg.green}'${thread.queue}'${ansi.normal}}{, activity = ${ansi.fg.green}'${thread.info.activity.name}'${ansi.normal}}{, ${thread.info.trace_messages} messages}{, stop reason = ${ansi.fg.red}${thread.stop-reason}${ansi.normal}}{\\\\nReturn value: ${thread.return-value}}{\\\\nCompleted expression: ${thread.completed-expression}}\\\\n">,
81    Desc<"The default thread format string to use when displaying thread information.">;
82  def ThreadStopFormat: Property<"thread-stop-format", "FormatEntity">,
83    Global,
84    DefaultStringValue<"thread #${thread.index}{, name = '${thread.name}'}{, queue = ${ansi.fg.green}'${thread.queue}'${ansi.normal}}{, activity = ${ansi.fg.green}'${thread.info.activity.name}'${ansi.normal}}{, ${thread.info.trace_messages} messages}{, stop reason = ${ansi.fg.red}${thread.stop-reason}${ansi.normal}}{\\\\nReturn value: ${thread.return-value}}{\\\\nCompleted expression: ${thread.completed-expression}}\\\\n">,
85    Desc<"The default thread format  string to use when displaying thread information as part of the stop display.">;
86  def UseExternalEditor: Property<"use-external-editor", "Boolean">,
87    Global,
88    DefaultFalse,
89    Desc<"Whether to use an external editor or not.">;
90  def UseColor: Property<"use-color", "Boolean">,
91    Global,
92    DefaultTrue,
93    Desc<"Whether to use Ansi color codes or not.">;
94  def AutoOneLineSummaries: Property<"auto-one-line-summaries", "Boolean">,
95    Global,
96    DefaultTrue,
97    Desc<"If true, LLDB will automatically display small structs in one-liner format (default: true).">;
98  def AutoIndent: Property<"auto-indent", "Boolean">,
99    Global,
100    DefaultTrue,
101    Desc<"If true, LLDB will auto indent/outdent code. Currently only supported in the REPL (default: true).">;
102  def PrintDecls: Property<"print-decls", "Boolean">,
103    Global,
104    DefaultTrue,
105    Desc<"If true, LLDB will print the values of variables declared in an expression. Currently only supported in the REPL (default: true).">;
106  def TabSize: Property<"tab-size", "UInt64">,
107    Global,
108    DefaultUnsignedValue<4>,
109    Desc<"The tab size to use when indenting code in multi-line input mode (default: 4).">;
110  def EscapeNonPrintables: Property<"escape-non-printables", "Boolean">,
111    Global,
112    DefaultTrue,
113    Desc<"If true, LLDB will automatically escape non-printable and escape characters when formatting strings.">;
114  def FrameFormatUnique: Property<"frame-format-unique", "FormatEntity">,
115    Global,
116    DefaultStringValue<"frame #${frame.index}: ${ansi.fg.yellow}${frame.pc}${ansi.normal}{ ${module.file.basename}{`${function.name-without-args}{${frame.no-debug}${function.pc-offset}}}}{ at ${ansi.fg.cyan}${line.file.basename}${ansi.normal}:${ansi.fg.yellow}${line.number}${ansi.normal}{:${ansi.fg.yellow}${line.column}${ansi.normal}}}{${function.is-optimized} [opt]}{${frame.is-artificial} [artificial]}\\\\n">,
117    Desc<"The default frame format string to use when displaying stack frameinformation for threads from thread backtrace unique.">;
118}
119