Update DAP protocol to 1.43.0

This commit is contained in:
Ben Clayton 2021-01-13 19:28:09 +00:00
parent 6d6cbf17d7
commit e10691ab3f
5 changed files with 132 additions and 34 deletions

View File

@ -15,7 +15,7 @@
// Generated with protocol_gen.go -- do not edit this file. // Generated with protocol_gen.go -- do not edit this file.
// go run scripts/protocol_gen/protocol_gen.go // go run scripts/protocol_gen/protocol_gen.go
// //
// DAP version 1.41.0 // DAP version 1.43.0
#ifndef dap_protocol_h #ifndef dap_protocol_h
#define dap_protocol_h #define dap_protocol_h
@ -102,7 +102,7 @@ struct Source {
// If sourceReference > 0 the contents of the source must be retrieved through // If sourceReference > 0 the contents of the source must be retrieved through
// the SourceRequest (even if a path is specified). A sourceReference is only // the SourceRequest (even if a path is specified). A sourceReference is only
// valid for a session, so it must not be used to persist a source. The value // valid for a session, so it must not be used to persist a source. The value
// should be less than or equal to 2147483647 (2^31 - 1). // should be less than or equal to 2147483647 (2^31-1).
optional<integer> sourceReference; optional<integer> sourceReference;
// An optional list of sources that are related to this source. These may be // An optional list of sources that are related to this source. These may be
// the source that generated this source. // the source that generated this source.
@ -269,16 +269,20 @@ struct ColumnDescriptor {
DAP_DECLARE_STRUCT_TYPEINFO(ColumnDescriptor); DAP_DECLARE_STRUCT_TYPEINFO(ColumnDescriptor);
// An ExceptionBreakpointsFilter is shown in the UI as an option for configuring // An ExceptionBreakpointsFilter is shown in the UI as an filter option for
// how exceptions are dealt with. // configuring how exceptions are dealt with.
struct ExceptionBreakpointsFilter { struct ExceptionBreakpointsFilter {
// Initial value of the filter. If not specified a value 'false' is assumed. // Initial value of the filter option. If not specified a value 'false' is
// assumed.
optional<boolean> def; optional<boolean> def;
// The internal ID of the filter. This value is passed to the // The internal ID of the filter option. This value is passed to the
// setExceptionBreakpoints request. // 'setExceptionBreakpoints' request.
string filter; string filter;
// The name of the filter. This will be shown in the UI. // The name of the filter option. This will be shown in the UI.
string label; string label;
// Controls whether a condition can be specified for this filter option. If
// false or missing, a condition can not be set.
optional<boolean> supportsCondition;
}; };
DAP_DECLARE_STRUCT_TYPEINFO(ExceptionBreakpointsFilter); DAP_DECLARE_STRUCT_TYPEINFO(ExceptionBreakpointsFilter);
@ -290,7 +294,8 @@ struct Capabilities {
// The set of characters that should trigger completion in a REPL. If not // The set of characters that should trigger completion in a REPL. If not
// specified, the UI should assume the '.' character. // specified, the UI should assume the '.' character.
optional<array<string>> completionTriggerCharacters; optional<array<string>> completionTriggerCharacters;
// Available filters or options for the setExceptionBreakpoints request. // Available exception filter options for the 'setExceptionBreakpoints'
// request.
optional<array<ExceptionBreakpointsFilter>> exceptionBreakpointFilters; optional<array<ExceptionBreakpointsFilter>> exceptionBreakpointFilters;
// The debug adapter supports the 'terminateDebuggee' attribute on the // The debug adapter supports the 'terminateDebuggee' attribute on the
// 'disconnect' request. // 'disconnect' request.
@ -321,6 +326,9 @@ struct Capabilities {
// The debug adapter supports a (side effect free) evaluate request for data // The debug adapter supports a (side effect free) evaluate request for data
// hovers. // hovers.
optional<boolean> supportsEvaluateForHovers; optional<boolean> supportsEvaluateForHovers;
// The debug adapter supports 'filterOptions' as an argument on the
// 'setExceptionBreakpoints' request.
optional<boolean> supportsExceptionFilterOptions;
// The debug adapter supports the 'exceptionInfo' request. // The debug adapter supports the 'exceptionInfo' request.
optional<boolean> supportsExceptionInfoRequest; optional<boolean> supportsExceptionInfoRequest;
// The debug adapter supports 'exceptionOptions' on the // The debug adapter supports 'exceptionOptions' on the
@ -703,7 +711,7 @@ struct EvaluateResponse : public Response {
// The number of indexed child variables. // The number of indexed child variables.
// The client can use this optional information to present the variables in a // The client can use this optional information to present the variables in a
// paged UI and fetch them in chunks. The value should be less than or equal // paged UI and fetch them in chunks. The value should be less than or equal
// to 2147483647 (2^31 - 1). // to 2147483647 (2^31-1).
optional<integer> indexedVariables; optional<integer> indexedVariables;
// Optional memory reference to a location appropriate for this result. // Optional memory reference to a location appropriate for this result.
// For pointer type eval results, this is generally a reference to the memory // For pointer type eval results, this is generally a reference to the memory
@ -714,7 +722,7 @@ struct EvaluateResponse : public Response {
// The number of named child variables. // The number of named child variables.
// The client can use this optional information to present the variables in a // The client can use this optional information to present the variables in a
// paged UI and fetch them in chunks. The value should be less than or equal // paged UI and fetch them in chunks. The value should be less than or equal
// to 2147483647 (2^31 - 1). // to 2147483647 (2^31-1).
optional<integer> namedVariables; optional<integer> namedVariables;
// Properties of a evaluate result that can be used to determine how to render // Properties of a evaluate result that can be used to determine how to render
// the result in the UI. // the result in the UI.
@ -729,7 +737,7 @@ struct EvaluateResponse : public Response {
// If variablesReference is > 0, the evaluate result is structured and its // If variablesReference is > 0, the evaluate result is structured and its
// children can be retrieved by passing variablesReference to the // children can be retrieved by passing variablesReference to the
// VariablesRequest. The value should be less than or equal to 2147483647 // VariablesRequest. The value should be less than or equal to 2147483647
// (2^31 - 1). // (2^31-1).
integer variablesReference; integer variablesReference;
}; };
@ -902,7 +910,8 @@ struct InitializeResponse : public Response {
// The set of characters that should trigger completion in a REPL. If not // The set of characters that should trigger completion in a REPL. If not
// specified, the UI should assume the '.' character. // specified, the UI should assume the '.' character.
optional<array<string>> completionTriggerCharacters; optional<array<string>> completionTriggerCharacters;
// Available filters or options for the setExceptionBreakpoints request. // Available exception filter options for the 'setExceptionBreakpoints'
// request.
optional<array<ExceptionBreakpointsFilter>> exceptionBreakpointFilters; optional<array<ExceptionBreakpointsFilter>> exceptionBreakpointFilters;
// The debug adapter supports the 'terminateDebuggee' attribute on the // The debug adapter supports the 'terminateDebuggee' attribute on the
// 'disconnect' request. // 'disconnect' request.
@ -933,6 +942,9 @@ struct InitializeResponse : public Response {
// The debug adapter supports a (side effect free) evaluate request for data // The debug adapter supports a (side effect free) evaluate request for data
// hovers. // hovers.
optional<boolean> supportsEvaluateForHovers; optional<boolean> supportsEvaluateForHovers;
// The debug adapter supports 'filterOptions' as an argument on the
// 'setExceptionBreakpoints' request.
optional<boolean> supportsExceptionFilterOptions;
// The debug adapter supports the 'exceptionInfo' request. // The debug adapter supports the 'exceptionInfo' request.
optional<boolean> supportsExceptionInfoRequest; optional<boolean> supportsExceptionInfoRequest;
// The debug adapter supports 'exceptionOptions' on the // The debug adapter supports 'exceptionOptions' on the
@ -1015,6 +1027,8 @@ struct InitializeRequest : public Request {
// May be one of the following enumeration values: // May be one of the following enumeration values:
// 'path', 'uri' // 'path', 'uri'
optional<string> pathFormat; optional<string> pathFormat;
// Client supports the invalidated event.
optional<boolean> supportsInvalidatedEvent;
// Client supports memory references. // Client supports memory references.
optional<boolean> supportsMemoryReferences; optional<boolean> supportsMemoryReferences;
// Client supports progress reporting. // Client supports progress reporting.
@ -1049,6 +1063,35 @@ struct InitializedEvent : public Event {};
DAP_DECLARE_STRUCT_TYPEINFO(InitializedEvent); DAP_DECLARE_STRUCT_TYPEINFO(InitializedEvent);
// Logical areas that can be invalidated by the 'invalidated' event.
struct InvalidatedAreas {};
DAP_DECLARE_STRUCT_TYPEINFO(InvalidatedAreas);
// This event signals that some state in the debug adapter has changed and
// requires that the client needs to re-render the data snapshot previously
// requested. Debug adapters do not have to emit this event for runtime changes
// like stopped or thread events because in that case the client refetches the
// new state anyway. But the event can be used for example to refresh the UI
// after rendering formatting has changed in the debug adapter. This event
// should only be sent if the debug adapter has received a value true for the
// 'supportsInvalidatedEvent' capability of the 'initialize' request.
struct InvalidatedEvent : public Event {
// Optional set of logical areas that got invalidated. This property has a
// hint characteristic: a client can only be expected to make a 'best effort'
// in honouring the areas but there are no guarantees. If this property is
// missing, empty, or if values are not understand the client should assume a
// single value 'all'.
optional<array<InvalidatedAreas>> areas;
// If specified, the client only needs to refetch data related to this stack
// frame (and the 'threadId' is ignored).
optional<integer> stackFrameId;
// If specified, the client only needs to refetch data related to this thread.
optional<integer> threadId;
};
DAP_DECLARE_STRUCT_TYPEINFO(InvalidatedEvent);
// Response to 'launch' request. This is just an acknowledgement, so no body // Response to 'launch' request. This is just an acknowledgement, so no body
// field is required. // field is required.
struct LaunchResponse : public Response {}; struct LaunchResponse : public Response {};
@ -1241,7 +1284,7 @@ struct OutputEvent : public Event {
// If an attribute 'variablesReference' exists and its value is > 0, the // If an attribute 'variablesReference' exists and its value is > 0, the
// output contains objects which can be retrieved by passing // output contains objects which can be retrieved by passing
// 'variablesReference' to the 'variables' request. The value should be less // 'variablesReference' to the 'variables' request. The value should be less
// than or equal to 2147483647 (2^31 - 1). // than or equal to 2147483647 (2^31-1).
optional<integer> variablesReference; optional<integer> variablesReference;
}; };
@ -1327,7 +1370,7 @@ struct ProgressStartEvent : public Event {
// request until the request has been either completed or cancelled. If the // request until the request has been either completed or cancelled. If the
// request ID is omitted, the progress report is assumed to be related to some // request ID is omitted, the progress report is assumed to be related to some
// general activity of the debug adapter. // general activity of the debug adapter.
optional<number> requestId; optional<integer> requestId;
// Mandatory (short) title of the progress reporting. Shown in the UI to // Mandatory (short) title of the progress reporting. Shown in the UI to
// describe the long running operation. // describe the long running operation.
string title; string title;
@ -1439,11 +1482,11 @@ DAP_DECLARE_STRUCT_TYPEINFO(ReverseContinueRequest);
// Response to 'runInTerminal' request. // Response to 'runInTerminal' request.
struct RunInTerminalResponse : public Response { struct RunInTerminalResponse : public Response {
// The process ID. The value should be less than or equal to 2147483647 (2^31 // The process ID. The value should be less than or equal to 2147483647
// - 1). // (2^31-1).
optional<integer> processId; optional<integer> processId;
// The process ID of the terminal shell. The value should be less than or // The process ID of the terminal shell. The value should be less than or
// equal to 2147483647 (2^31 - 1). // equal to 2147483647 (2^31-1).
optional<integer> shellProcessId; optional<integer> shellProcessId;
}; };
@ -1458,7 +1501,8 @@ struct RunInTerminalRequest : public Request {
using Response = RunInTerminalResponse; using Response = RunInTerminalResponse;
// List of arguments. The first argument is the command to run. // List of arguments. The first argument is the command to run.
array<string> args; array<string> args;
// Working directory of the command. // Working directory for the command. For non-empty, valid paths this
// typically results in execution of a change directory command.
string cwd; string cwd;
// Environment key-value pairs that are added to or removed from the default // Environment key-value pairs that are added to or removed from the default
// environment. // environment.
@ -1663,6 +1707,20 @@ struct ExceptionOptions {
DAP_DECLARE_STRUCT_TYPEINFO(ExceptionOptions); DAP_DECLARE_STRUCT_TYPEINFO(ExceptionOptions);
// An ExceptionFilterOptions is used to specify an exception filter together
// with a condition for the setExceptionsFilter request.
struct ExceptionFilterOptions {
// An optional expression for conditional exceptions.
// The exception will break into the debugger if the result of the condition
// is true.
optional<string> condition;
// ID of an exception filter returned by the 'exceptionBreakpointFilters'
// capability.
string filterId;
};
DAP_DECLARE_STRUCT_TYPEINFO(ExceptionFilterOptions);
// The request configures the debuggers response to thrown exceptions. // The request configures the debuggers response to thrown exceptions.
// If an exception is configured to break, a 'stopped' event is fired (with // If an exception is configured to break, a 'stopped' event is fired (with
// reason 'exception'). Clients should only call this request if the capability // reason 'exception'). Clients should only call this request if the capability
@ -1673,8 +1731,15 @@ struct SetExceptionBreakpointsRequest : public Request {
// The attribute is only honored by a debug adapter if the capability // The attribute is only honored by a debug adapter if the capability
// 'supportsExceptionOptions' is true. // 'supportsExceptionOptions' is true.
optional<array<ExceptionOptions>> exceptionOptions; optional<array<ExceptionOptions>> exceptionOptions;
// IDs of checked exception options. The set of IDs is returned via the // Set of exception filters and their options. The set of all possible
// 'exceptionBreakpointFilters' capability. // exception filters is defined by the 'exceptionBreakpointFilters'
// capability. This attribute is only honored by a debug adapter if the
// capability 'supportsExceptionFilterOptions' is true. The 'filter' and
// 'filterOptions' sets are additive.
optional<array<ExceptionFilterOptions>> filterOptions;
// Set of exception filters specified by their ID. The set of all possible
// exception filters is defined by the 'exceptionBreakpointFilters'
// capability. The 'filter' and 'filterOptions' sets are additive.
array<string> filters; array<string> filters;
}; };
@ -1685,12 +1750,12 @@ struct SetExpressionResponse : public Response {
// The number of indexed child variables. // The number of indexed child variables.
// The client can use this optional information to present the variables in a // The client can use this optional information to present the variables in a
// paged UI and fetch them in chunks. The value should be less than or equal // paged UI and fetch them in chunks. The value should be less than or equal
// to 2147483647 (2^31 - 1). // to 2147483647 (2^31-1).
optional<integer> indexedVariables; optional<integer> indexedVariables;
// The number of named child variables. // The number of named child variables.
// The client can use this optional information to present the variables in a // The client can use this optional information to present the variables in a
// paged UI and fetch them in chunks. The value should be less than or equal // paged UI and fetch them in chunks. The value should be less than or equal
// to 2147483647 (2^31 - 1). // to 2147483647 (2^31-1).
optional<integer> namedVariables; optional<integer> namedVariables;
// Properties of a value that can be used to determine how to render the // Properties of a value that can be used to determine how to render the
// result in the UI. // result in the UI.
@ -1704,7 +1769,7 @@ struct SetExpressionResponse : public Response {
string value; string value;
// If variablesReference is > 0, the value is structured and its children can // If variablesReference is > 0, the value is structured and its children can
// be retrieved by passing variablesReference to the VariablesRequest. The // be retrieved by passing variablesReference to the VariablesRequest. The
// value should be less than or equal to 2147483647 (2^31 - 1). // value should be less than or equal to 2147483647 (2^31-1).
optional<integer> variablesReference; optional<integer> variablesReference;
}; };
@ -1820,12 +1885,12 @@ struct SetVariableResponse : public Response {
// The number of indexed child variables. // The number of indexed child variables.
// The client can use this optional information to present the variables in a // The client can use this optional information to present the variables in a
// paged UI and fetch them in chunks. The value should be less than or equal // paged UI and fetch them in chunks. The value should be less than or equal
// to 2147483647 (2^31 - 1). // to 2147483647 (2^31-1).
optional<integer> indexedVariables; optional<integer> indexedVariables;
// The number of named child variables. // The number of named child variables.
// The client can use this optional information to present the variables in a // The client can use this optional information to present the variables in a
// paged UI and fetch them in chunks. The value should be less than or equal // paged UI and fetch them in chunks. The value should be less than or equal
// to 2147483647 (2^31 - 1). // to 2147483647 (2^31-1).
optional<integer> namedVariables; optional<integer> namedVariables;
// The type of the new value. Typically shown in the UI when hovering over the // The type of the new value. Typically shown in the UI when hovering over the
// value. // value.
@ -1834,7 +1899,7 @@ struct SetVariableResponse : public Response {
string value; string value;
// If variablesReference is > 0, the new value is structured and its children // If variablesReference is > 0, the new value is structured and its children
// can be retrieved by passing variablesReference to the VariablesRequest. The // can be retrieved by passing variablesReference to the VariablesRequest. The
// value should be less than or equal to 2147483647 (2^31 - 1). // value should be less than or equal to 2147483647 (2^31-1).
optional<integer> variablesReference; optional<integer> variablesReference;
}; };
@ -1924,7 +1989,12 @@ struct StackTraceResponse : public Response {
// stackframes available. This means that there is no location information // stackframes available. This means that there is no location information
// available. // available.
array<StackFrame> stackFrames; array<StackFrame> stackFrames;
// The total number of frames available. // The total number of frames available in the stack. If omitted or if
// totalFrames is larger than the available frames, a client is expected to
// request frames until a request returns less frames than requested (which
// indicates the end of the stack). Returning monotonically increasing
// totalFrames values for subsequent requests can be used to enforce paging in
// the client.
optional<integer> totalFrames; optional<integer> totalFrames;
}; };
@ -1951,7 +2021,16 @@ struct StackFrameFormat : public ValueFormat {
DAP_DECLARE_STRUCT_TYPEINFO(StackFrameFormat); DAP_DECLARE_STRUCT_TYPEINFO(StackFrameFormat);
// The request returns a stacktrace from the current execution state. // The request returns a stacktrace from the current execution state of a given
// thread. A client can request all stack frames by omitting the startFrame and
// levels arguments. For performance conscious clients stack frames can be
// retrieved in a piecemeal way with the startFrame and levels arguments. The
// response of the stackTrace request may contain a totalFrames property that
// hints at the total number of frames in the stack. If a client needs this
// total number upfront, it can issue a request for a single (first) frame and
// depending on the value of totalFrames decide how to proceed. In any case a
// client should be prepared to receive less frames than requested, which is an
// indication that the end of the stack has been reached.
struct StackTraceRequest : public Request { struct StackTraceRequest : public Request {
using Response = StackTraceResponse; using Response = StackTraceResponse;
// Specifies details on how to format the stack frames. // Specifies details on how to format the stack frames.

View File

@ -15,7 +15,7 @@
// Generated with protocol_gen.go -- do not edit this file. // Generated with protocol_gen.go -- do not edit this file.
// go run scripts/protocol_gen/protocol_gen.go // go run scripts/protocol_gen/protocol_gen.go
// //
// DAP version 1.41.0 // DAP version 1.43.0
#include "dap/protocol.h" #include "dap/protocol.h"
@ -42,6 +42,12 @@ DAP_IMPLEMENT_STRUCT_TYPEINFO(ExitedEvent,
DAP_IMPLEMENT_STRUCT_TYPEINFO(InitializedEvent, "initialized"); DAP_IMPLEMENT_STRUCT_TYPEINFO(InitializedEvent, "initialized");
DAP_IMPLEMENT_STRUCT_TYPEINFO(InvalidatedEvent,
"invalidated",
DAP_FIELD(areas, "areas"),
DAP_FIELD(stackFrameId, "stackFrameId"),
DAP_FIELD(threadId, "threadId"));
DAP_IMPLEMENT_STRUCT_TYPEINFO(LoadedSourceEvent, DAP_IMPLEMENT_STRUCT_TYPEINFO(LoadedSourceEvent,
"loadedSource", "loadedSource",
DAP_FIELD(reason, "reason"), DAP_FIELD(reason, "reason"),

View File

@ -15,7 +15,7 @@
// Generated with protocol_gen.go -- do not edit this file. // Generated with protocol_gen.go -- do not edit this file.
// go run scripts/protocol_gen/protocol_gen.go // go run scripts/protocol_gen/protocol_gen.go
// //
// DAP version 1.41.0 // DAP version 1.43.0
#include "dap/protocol.h" #include "dap/protocol.h"
@ -103,6 +103,7 @@ DAP_IMPLEMENT_STRUCT_TYPEINFO(
DAP_FIELD(linesStartAt1, "linesStartAt1"), DAP_FIELD(linesStartAt1, "linesStartAt1"),
DAP_FIELD(locale, "locale"), DAP_FIELD(locale, "locale"),
DAP_FIELD(pathFormat, "pathFormat"), DAP_FIELD(pathFormat, "pathFormat"),
DAP_FIELD(supportsInvalidatedEvent, "supportsInvalidatedEvent"),
DAP_FIELD(supportsMemoryReferences, "supportsMemoryReferences"), DAP_FIELD(supportsMemoryReferences, "supportsMemoryReferences"),
DAP_FIELD(supportsProgressReporting, "supportsProgressReporting"), DAP_FIELD(supportsProgressReporting, "supportsProgressReporting"),
DAP_FIELD(supportsRunInTerminalRequest, "supportsRunInTerminalRequest"), DAP_FIELD(supportsRunInTerminalRequest, "supportsRunInTerminalRequest"),
@ -172,6 +173,7 @@ DAP_IMPLEMENT_STRUCT_TYPEINFO(SetDataBreakpointsRequest,
DAP_IMPLEMENT_STRUCT_TYPEINFO(SetExceptionBreakpointsRequest, DAP_IMPLEMENT_STRUCT_TYPEINFO(SetExceptionBreakpointsRequest,
"setExceptionBreakpoints", "setExceptionBreakpoints",
DAP_FIELD(exceptionOptions, "exceptionOptions"), DAP_FIELD(exceptionOptions, "exceptionOptions"),
DAP_FIELD(filterOptions, "filterOptions"),
DAP_FIELD(filters, "filters")); DAP_FIELD(filters, "filters"));
DAP_IMPLEMENT_STRUCT_TYPEINFO(SetExpressionRequest, DAP_IMPLEMENT_STRUCT_TYPEINFO(SetExpressionRequest,

View File

@ -15,7 +15,7 @@
// Generated with protocol_gen.go -- do not edit this file. // Generated with protocol_gen.go -- do not edit this file.
// go run scripts/protocol_gen/protocol_gen.go // go run scripts/protocol_gen/protocol_gen.go
// //
// DAP version 1.41.0 // DAP version 1.43.0
#include "dap/protocol.h" #include "dap/protocol.h"
@ -100,6 +100,7 @@ DAP_IMPLEMENT_STRUCT_TYPEINFO(
"supportsDelayedStackTraceLoading"), "supportsDelayedStackTraceLoading"),
DAP_FIELD(supportsDisassembleRequest, "supportsDisassembleRequest"), DAP_FIELD(supportsDisassembleRequest, "supportsDisassembleRequest"),
DAP_FIELD(supportsEvaluateForHovers, "supportsEvaluateForHovers"), DAP_FIELD(supportsEvaluateForHovers, "supportsEvaluateForHovers"),
DAP_FIELD(supportsExceptionFilterOptions, "supportsExceptionFilterOptions"),
DAP_FIELD(supportsExceptionInfoRequest, "supportsExceptionInfoRequest"), DAP_FIELD(supportsExceptionInfoRequest, "supportsExceptionInfoRequest"),
DAP_FIELD(supportsExceptionOptions, "supportsExceptionOptions"), DAP_FIELD(supportsExceptionOptions, "supportsExceptionOptions"),
DAP_FIELD(supportsFunctionBreakpoints, "supportsFunctionBreakpoints"), DAP_FIELD(supportsFunctionBreakpoints, "supportsFunctionBreakpoints"),

View File

@ -15,7 +15,7 @@
// Generated with protocol_gen.go -- do not edit this file. // Generated with protocol_gen.go -- do not edit this file.
// go run scripts/protocol_gen/protocol_gen.go // go run scripts/protocol_gen/protocol_gen.go
// //
// DAP version 1.41.0 // DAP version 1.43.0
#include "dap/protocol.h" #include "dap/protocol.h"
@ -72,7 +72,9 @@ DAP_IMPLEMENT_STRUCT_TYPEINFO(ExceptionBreakpointsFilter,
"", "",
DAP_FIELD(def, "default"), DAP_FIELD(def, "default"),
DAP_FIELD(filter, "filter"), DAP_FIELD(filter, "filter"),
DAP_FIELD(label, "label")); DAP_FIELD(label, "label"),
DAP_FIELD(supportsCondition,
"supportsCondition"));
DAP_IMPLEMENT_STRUCT_TYPEINFO( DAP_IMPLEMENT_STRUCT_TYPEINFO(
Capabilities, Capabilities,
@ -95,6 +97,7 @@ DAP_IMPLEMENT_STRUCT_TYPEINFO(
"supportsDelayedStackTraceLoading"), "supportsDelayedStackTraceLoading"),
DAP_FIELD(supportsDisassembleRequest, "supportsDisassembleRequest"), DAP_FIELD(supportsDisassembleRequest, "supportsDisassembleRequest"),
DAP_FIELD(supportsEvaluateForHovers, "supportsEvaluateForHovers"), DAP_FIELD(supportsEvaluateForHovers, "supportsEvaluateForHovers"),
DAP_FIELD(supportsExceptionFilterOptions, "supportsExceptionFilterOptions"),
DAP_FIELD(supportsExceptionInfoRequest, "supportsExceptionInfoRequest"), DAP_FIELD(supportsExceptionInfoRequest, "supportsExceptionInfoRequest"),
DAP_FIELD(supportsExceptionOptions, "supportsExceptionOptions"), DAP_FIELD(supportsExceptionOptions, "supportsExceptionOptions"),
DAP_FIELD(supportsFunctionBreakpoints, "supportsFunctionBreakpoints"), DAP_FIELD(supportsFunctionBreakpoints, "supportsFunctionBreakpoints"),
@ -186,6 +189,8 @@ DAP_IMPLEMENT_STRUCT_TYPEINFO(GotoTarget,
DAP_FIELD(label, "label"), DAP_FIELD(label, "label"),
DAP_FIELD(line, "line")); DAP_FIELD(line, "line"));
DAP_IMPLEMENT_STRUCT_TYPEINFO(InvalidatedAreas, "");
DAP_IMPLEMENT_STRUCT_TYPEINFO(Module, DAP_IMPLEMENT_STRUCT_TYPEINFO(Module,
"", "",
DAP_FIELD(addressRange, "addressRange"), DAP_FIELD(addressRange, "addressRange"),
@ -241,6 +246,11 @@ DAP_IMPLEMENT_STRUCT_TYPEINFO(ExceptionOptions,
DAP_FIELD(breakMode, "breakMode"), DAP_FIELD(breakMode, "breakMode"),
DAP_FIELD(path, "path")); DAP_FIELD(path, "path"));
DAP_IMPLEMENT_STRUCT_TYPEINFO(ExceptionFilterOptions,
"",
DAP_FIELD(condition, "condition"),
DAP_FIELD(filterId, "filterId"));
DAP_IMPLEMENT_STRUCT_TYPEINFO(FunctionBreakpoint, DAP_IMPLEMENT_STRUCT_TYPEINFO(FunctionBreakpoint,
"", "",
DAP_FIELD(condition, "condition"), DAP_FIELD(condition, "condition"),