{LLDB_OPT_SET_ALL,false,"category",'w',OptionParser::eRequiredArgument,nullptr,{},0,eArgTypeName,"Add this to the given category instead of the default one."},
{LLDB_OPT_SET_ALL,false,"cascade",'C',OptionParser::eRequiredArgument,nullptr,{},0,eArgTypeBoolean,"If true, cascade through typedef chains."},
{LLDB_OPT_SET_ALL,false,"no-value",'v',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"Don't show the value, just show the summary, for this type."},
{LLDB_OPT_SET_ALL,false,"skip-pointers",'p',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"Don't use this format for pointers-to-type objects."},
{LLDB_OPT_SET_ALL,false,"skip-references",'r',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"Don't use this format for references-to-type objects."},
{LLDB_OPT_SET_ALL,false,"regex",'x',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"Type names are actually regular expressions."},
{LLDB_OPT_SET_1,true,"inline-children",'c',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"If true, inline all child values into summary string."},
{LLDB_OPT_SET_1,false,"omit-names",'O',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"If true, omit value names in the summary display."},
{LLDB_OPT_SET_2,true,"summary-string",'s',OptionParser::eRequiredArgument,nullptr,{},0,eArgTypeSummaryString,"Summary string used to display text and object contents."},
{LLDB_OPT_SET_3,false,"python-script",'o',OptionParser::eRequiredArgument,nullptr,{},0,eArgTypePythonScript,"Give a one-liner Python script as part of the command."},
{LLDB_OPT_SET_3,false,"python-function",'F',OptionParser::eRequiredArgument,nullptr,{},0,eArgTypePythonFunction,"Give the name of a Python function to use for this type."},
{LLDB_OPT_SET_3,false,"input-python",'P',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"Input Python code to use for this type manually."},
{LLDB_OPT_SET_2|LLDB_OPT_SET_3,false,"expand",'e',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"Expand aggregate data types to show children on separate lines."},
{LLDB_OPT_SET_2|LLDB_OPT_SET_3,false,"hide-empty",'h',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"Do not expand aggregate data types with no children."},
{LLDB_OPT_SET_2|LLDB_OPT_SET_3,false,"name",'n',OptionParser::eRequiredArgument,nullptr,{},0,eArgTypeName,"A name for this summary string."}
{LLDB_OPT_SET_ALL,false,"cascade",'C',OptionParser::eRequiredArgument,nullptr,{},0,eArgTypeBoolean,"If true, cascade through typedef chains."},
{LLDB_OPT_SET_ALL,false,"skip-pointers",'p',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"Don't use this format for pointers-to-type objects."},
{LLDB_OPT_SET_ALL,false,"skip-references",'r',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"Don't use this format for references-to-type objects."},
{LLDB_OPT_SET_ALL,false,"category",'w',OptionParser::eRequiredArgument,nullptr,{},0,eArgTypeName,"Add this to the given category instead of the default one."},
{LLDB_OPT_SET_2,false,"python-class",'l',OptionParser::eRequiredArgument,nullptr,{},0,eArgTypePythonClass,"Use this Python class to produce synthetic children."},
{LLDB_OPT_SET_3,false,"input-python",'P',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"Type Python code to generate a class that provides synthetic children."},
{LLDB_OPT_SET_ALL,false,"regex",'x',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"Type names are actually regular expressions."}
{LLDB_OPT_SET_ALL,false,"category",'w',OptionParser::eRequiredArgument,nullptr,{},0,eArgTypeName,"Add this to the given category instead of the default one."},
{LLDB_OPT_SET_ALL,false,"cascade",'C',OptionParser::eRequiredArgument,nullptr,{},0,eArgTypeBoolean,"If true, cascade through typedef chains."},
{LLDB_OPT_SET_ALL,false,"skip-pointers",'p',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"Don't use this format for pointers-to-type objects."},
{LLDB_OPT_SET_ALL,false,"skip-references",'r',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"Don't use this format for references-to-type objects."},
{LLDB_OPT_SET_ALL,false,"regex",'x',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"Type names are actually regular expressions."},
{LLDB_OPT_SET_2,false,"type",'t',OptionParser::eRequiredArgument,nullptr,{},0,eArgTypeName,"Format variables as if they were of this type."}
{LLDB_OPT_SET_ALL,false,"enabled",'e',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"If specified, this category will be created enabled."},
{LLDB_OPT_SET_ALL,false,"language",'l',OptionParser::eRequiredArgument,nullptr,{},0,eArgTypeLanguage,"Specify the language that this category is supported for."}
{LLDB_OPT_SET_ALL,false,"cascade",'C',OptionParser::eRequiredArgument,nullptr,{},0,eArgTypeBoolean,"If true, cascade through typedef chains."},
{LLDB_OPT_SET_ALL,false,"skip-pointers",'p',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"Don't use this format for pointers-to-type objects."},
{LLDB_OPT_SET_ALL,false,"skip-references",'r',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"Don't use this format for references-to-type objects."},
{LLDB_OPT_SET_ALL,false,"category",'w',OptionParser::eRequiredArgument,nullptr,{},0,eArgTypeName,"Add this to the given category instead of the default one."},
{LLDB_OPT_SET_ALL,false,"child",'c',OptionParser::eRequiredArgument,nullptr,{},0,eArgTypeExpressionPath,"Include this expression path in the synthetic view."},
{LLDB_OPT_SET_ALL,false,"regex",'x',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"Type names are actually regular expressions."}
{LLDB_OPT_SET_ALL,false,"show-help",'h',OptionParser::eNoArgument,nullptr,{},0,eArgTypeNone,"Display available help for types"},
{LLDB_OPT_SET_ALL,false,"language",'l',OptionParser::eRequiredArgument,nullptr,{},0,eArgTypeLanguage,"Which language's types should the search scope be"}
def type_summary_add_inline_children : Option<"inline-children", "c">, Group<1>, Required, Desc<"If true, inline all child values into summary string.">;
def type_summary_add_omit_names : Option<"omit-names", "O">, Group<1>, Desc<"If true, omit value names in the summary display.">;
def type_summary_add_summary_string : Option<"summary-string", "s">, Group<2>, Arg<"SummaryString">, Required, Desc<"Summary string used to display text and object contents.">;
def type_summary_add_python_script : Option<"python-script", "o">, Group<3>, Arg<"PythonScript">, Desc<"Give a one-liner Python script as part of the command.">;
def type_summary_add_python_function : Option<"python-function", "F">, Group<3>, Arg<"PythonFunction">, Desc<"Give the name of a Python function to use for this type.">;
def type_summary_add_input_python : Option<"input-python", "P">, Group<3>, Desc<"Input Python code to use for this type manually.">;
def type_summary_add_expand : Option<"expand", "e">, Groups<[2,3]>, Desc<"Expand aggregate data types to show children on separate lines.">;
def type_summary_add_hide_empty : Option<"hide-empty", "h">, Groups<[2,3]>, Desc<"Do not expand aggregate data types with no children.">;
def type_summary_add_name : Option<"name", "n">, Groups<[2,3]>, Arg<"Name">, Desc<"A name for this summary string.">;
def type_synth_add_skip_pointers : Option<"skip-pointers", "p">, Desc<"Don't use this format for pointers-to-type objects.">;
def type_synth_add_skip_references : Option<"skip-references", "r">, Desc<"Don't use this format for references-to-type objects.">;
def type_synth_add_category : Option<"category", "w">, Arg<"Name">, Desc<"Add this to the given category instead of the default one.">;
def type_synth_add_python_class : Option<"python-class", "l">, Group<2>, Arg<"PythonClass">, Desc<"Use this Python class to produce synthetic children.">;
def type_synth_add_input_python : Option<"input-python", "P">, Group<3>, Desc<"Type Python code to generate a class that provides synthetic children.">;