ruby-dap 0.1.2 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/README.md +17 -3
- data/lib/dap.rb +4 -0
- data/lib/dap/attach_request_arguments.rb +2 -0
- data/lib/dap/base.rb +57 -6
- data/lib/dap/breakpoint.rb +11 -9
- data/lib/dap/breakpoint_event_body.rb +2 -1
- data/lib/dap/breakpoint_location.rb +6 -4
- data/lib/dap/breakpoint_locations_arguments.rb +5 -4
- data/lib/dap/breakpoint_locations_response_body.rb +2 -0
- data/lib/dap/cancel_arguments.rb +3 -2
- data/lib/dap/capabilities.rb +33 -32
- data/lib/dap/capabilities_event_body.rb +6 -0
- data/lib/dap/checksum.rb +2 -1
- data/lib/dap/checksum_algorithm.rb +1 -0
- data/lib/dap/column_descriptor.rb +8 -5
- data/lib/dap/completion_item.rb +8 -7
- data/lib/dap/completion_item_type.rb +2 -0
- data/lib/dap/completions_arguments.rb +5 -4
- data/lib/dap/completions_response_body.rb +1 -0
- data/lib/dap/continue_arguments.rb +2 -1
- data/lib/dap/continue_response_body.rb +2 -1
- data/lib/dap/continued_event_body.rb +7 -2
- data/lib/dap/data_breakpoint.rb +4 -3
- data/lib/dap/data_breakpoint_access_type.rb +1 -0
- data/lib/dap/data_breakpoint_info_arguments.rb +3 -2
- data/lib/dap/data_breakpoint_info_response_body.rb +3 -2
- data/lib/dap/disassemble_arguments.rb +6 -5
- data/lib/dap/disassemble_response_body.rb +1 -0
- data/lib/dap/disassembled_instruction.rb +9 -8
- data/lib/dap/disconnect_arguments.rb +3 -2
- data/lib/dap/encoding.rb +12 -1
- data/lib/dap/enum.rb +6 -0
- data/lib/dap/error_response_body.rb +1 -0
- data/lib/dap/evaluate_arguments.rb +4 -3
- data/lib/dap/evaluate_response_body.rb +7 -6
- data/lib/dap/event.rb +7 -0
- data/lib/dap/exception_break_mode.rb +6 -0
- data/lib/dap/exception_breakpoints_filter.rb +5 -3
- data/lib/dap/exception_details.rb +6 -5
- data/lib/dap/exception_info_arguments.rb +2 -1
- data/lib/dap/exception_info_response_body.rb +3 -2
- data/lib/dap/exception_options.rb +1 -0
- data/lib/dap/exception_path_segment.rb +6 -2
- data/lib/dap/exited_event_body.rb +2 -1
- data/lib/dap/function_breakpoint.rb +4 -3
- data/lib/dap/goto_arguments.rb +3 -2
- data/lib/dap/goto_target.rb +10 -7
- data/lib/dap/goto_targets_arguments.rb +3 -2
- data/lib/dap/goto_targets_response_body.rb +1 -0
- data/lib/dap/initialize_request_arguments.rb +14 -13
- data/lib/dap/instruction_breakpoint.rb +5 -4
- data/lib/dap/invalidated_event_body.rb +11 -3
- data/lib/dap/launch_request_arguments.rb +3 -1
- data/lib/dap/loaded_source_event_body.rb +3 -1
- data/lib/dap/loaded_sources_response_body.rb +1 -0
- data/lib/dap/message.rb +8 -7
- data/lib/dap/module.rb +17 -8
- data/lib/dap/module_event_body.rb +2 -1
- data/lib/dap/modules_arguments.rb +3 -2
- data/lib/dap/modules_response_body.rb +2 -1
- data/lib/dap/next_arguments.rb +2 -1
- data/lib/dap/output_event_body.rb +7 -6
- data/lib/dap/pause_arguments.rb +2 -1
- data/lib/dap/process_event_body.rb +7 -5
- data/lib/dap/progress_end_event_body.rb +5 -2
- data/lib/dap/progress_start_event_body.rb +12 -6
- data/lib/dap/progress_update_event_body.rb +9 -3
- data/lib/dap/protocol_message.rb +12 -1
- data/lib/dap/read_memory_arguments.rb +4 -3
- data/lib/dap/read_memory_response_body.rb +4 -3
- data/lib/dap/relation.rb +17 -1
- data/lib/dap/request.rb +7 -0
- data/lib/dap/response.rb +22 -1
- data/lib/dap/restart_frame_arguments.rb +2 -1
- data/lib/dap/reverse_continue_arguments.rb +2 -1
- data/lib/dap/run_in_terminal_request_arguments.rb +6 -5
- data/lib/dap/run_in_terminal_response_body.rb +3 -2
- data/lib/dap/scope.rb +12 -10
- data/lib/dap/scopes_arguments.rb +2 -1
- data/lib/dap/scopes_response_body.rb +1 -0
- data/lib/dap/set_breakpoints_arguments.rb +3 -2
- data/lib/dap/set_breakpoints_response_body.rb +5 -0
- data/lib/dap/set_data_breakpoints_arguments.rb +1 -0
- data/lib/dap/set_data_breakpoints_response_body.rb +2 -0
- data/lib/dap/set_exception_breakpoints_arguments.rb +2 -1
- data/lib/dap/set_expression_arguments.rb +4 -3
- data/lib/dap/set_expression_response_body.rb +6 -5
- data/lib/dap/set_function_breakpoints_arguments.rb +1 -0
- data/lib/dap/set_function_breakpoints_response_body.rb +2 -0
- data/lib/dap/set_instruction_breakpoints_arguments.rb +1 -0
- data/lib/dap/set_instruction_breakpoints_response_body.rb +1 -0
- data/lib/dap/set_variable_arguments.rb +4 -3
- data/lib/dap/set_variable_response_body.rb +6 -5
- data/lib/dap/source.rb +7 -5
- data/lib/dap/source_arguments.rb +2 -1
- data/lib/dap/source_breakpoint.rb +6 -5
- data/lib/dap/source_response_body.rb +3 -2
- data/lib/dap/stack_frame.rb +9 -8
- data/lib/dap/stack_frame_format.rb +8 -7
- data/lib/dap/stack_trace_arguments.rb +4 -3
- data/lib/dap/stack_trace_response_body.rb +2 -1
- data/lib/dap/step_back_arguments.rb +2 -1
- data/lib/dap/step_in_arguments.rb +3 -2
- data/lib/dap/step_in_target.rb +4 -2
- data/lib/dap/step_in_targets_arguments.rb +2 -1
- data/lib/dap/step_in_targets_response_body.rb +1 -0
- data/lib/dap/step_out_arguments.rb +2 -1
- data/lib/dap/stepping_granularity.rb +10 -0
- data/lib/dap/stopped_event_body.rb +9 -6
- data/lib/dap/terminate_arguments.rb +2 -1
- data/lib/dap/terminate_threads_arguments.rb +2 -1
- data/lib/dap/terminated_event_body.rb +2 -0
- data/lib/dap/thread.rb +3 -2
- data/lib/dap/thread_event_body.rb +3 -2
- data/lib/dap/threads_response_body.rb +1 -0
- data/lib/dap/value_format.rb +2 -1
- data/lib/dap/variable.rb +17 -8
- data/lib/dap/variable_presentation_hint.rb +5 -3
- data/lib/dap/variables_arguments.rb +5 -4
- data/lib/dap/variables_response_body.rb +1 -0
- metadata +2 -2
@@ -1,8 +1,9 @@
|
|
1
1
|
require_relative 'stepping_granularity'
|
2
2
|
|
3
|
+
# Arguments for ‘stepOut’ request.
|
3
4
|
class DAP::StepOutArguments < DAP::Base
|
4
5
|
# Execute 'stepOut' for this thread.
|
5
|
-
property :threadId
|
6
|
+
property :threadId, as: 'number'
|
6
7
|
|
7
8
|
# Optional granularity to step. If no granularity is specified, a granularity of 'statement' is assumed.
|
8
9
|
property :granularity, required: false, as: DAP::SteppingGranularity
|
@@ -1,5 +1,15 @@
|
|
1
|
+
# The granularity of one ‘step’ in the stepping requests ‘next’, ‘stepIn’,
|
2
|
+
# ‘stepOut’, and ‘stepBack’.
|
1
3
|
class DAP::SteppingGranularity < DAP::Enum
|
4
|
+
# The step should allow the program to run until the current statement has
|
5
|
+
# finished executing. The meaning of a statement is determined by the adapter
|
6
|
+
# and it may be considered equivalent to a line. For example ‘for(int i = 0; i
|
7
|
+
# < 10; i++)’ could be considered to have 3 statements ‘int i = 0’, ‘i < 10’,
|
8
|
+
# and ‘i++’
|
2
9
|
STATEMENT = new('statement')
|
10
|
+
# The step should allow the program to run until the current source line has
|
11
|
+
# executed
|
3
12
|
LINE = new('line')
|
13
|
+
# The step should allow one instruction to execute (e.g. one x86 instruction)
|
4
14
|
INSTRUCTION = new('instruction')
|
5
15
|
end
|
@@ -1,23 +1,26 @@
|
|
1
|
+
# The event indicates that the execution of the debuggee has stopped due to some
|
2
|
+
# condition. This can be caused by a break point previously set, a stepping
|
3
|
+
# request has completed, by executing a debugger statement etc.
|
1
4
|
class DAP::StoppedEventBody < DAP::Base
|
2
5
|
# The reason for the event.
|
3
6
|
# For backward compatibility this string is shown in the UI if the 'description' attribute is missing (but it must not be translated).
|
4
7
|
# Values: 'step', 'breakpoint', 'exception', 'pause', 'entry', 'goto', 'function breakpoint', 'data breakpoint', 'instruction breakpoint', etc.
|
5
|
-
property :reason
|
8
|
+
property :reason, as: 'string'
|
6
9
|
|
7
10
|
# The full reason for the event, e.g. 'Paused on exception'. This string is shown in the UI as is and must be translated.
|
8
|
-
property :description, required: false
|
11
|
+
property :description, required: false, as: 'string'
|
9
12
|
|
10
13
|
# The thread which was stopped.
|
11
|
-
property :threadId, required: false
|
14
|
+
property :threadId, required: false, as: 'number'
|
12
15
|
|
13
16
|
# A value of true hints to the frontend that this event should not change the focus.
|
14
|
-
property :preserveFocusHint, required: false
|
17
|
+
property :preserveFocusHint, required: false, as: 'boolean'
|
15
18
|
|
16
19
|
# Additional information. E.g. if reason is 'exception', text contains the exception name. This string is shown in the UI.
|
17
|
-
property :text, required: false
|
20
|
+
property :text, required: false, as: 'string'
|
18
21
|
|
19
22
|
# If 'allThreadsStopped' is true, a debug adapter can announce that all threads have stopped.
|
20
23
|
# - The client should use this information to enable that all threads can be expanded to access their stacktraces.
|
21
24
|
# - If the attribute is missing or false, only the thread with the given threadId can be expanded.
|
22
|
-
property :allThreadsStopped, required: false
|
25
|
+
property :allThreadsStopped, required: false, as: 'boolean'
|
23
26
|
end
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# The event indicates that debugging of the debuggee has terminated. This does not
|
2
|
+
# mean that the debuggee itself has exited.
|
1
3
|
class DAP::TerminatedEventBody < DAP::Base
|
2
4
|
# A debug adapter may set 'restart' to true (or to an arbitrary object) to request that the front end restarts the session.
|
3
5
|
# The value is not interpreted by the client and passed unmodified as an attribute '__restart' to the 'launch' and 'attach' requests.
|
data/lib/dap/thread.rb
CHANGED
@@ -1,8 +1,9 @@
|
|
1
|
+
# The event indicates that a thread has started or exited.
|
1
2
|
class DAP::ThreadEventBody < DAP::Base
|
2
3
|
# The reason for the event.
|
3
4
|
# Values: 'started', 'exited', etc.
|
4
|
-
property :reason
|
5
|
+
property :reason, as: 'string'
|
5
6
|
|
6
7
|
# The identifier of the thread.
|
7
|
-
property :threadId
|
8
|
+
property :threadId, as: 'number'
|
8
9
|
end
|
data/lib/dap/value_format.rb
CHANGED
data/lib/dap/variable.rb
CHANGED
@@ -1,34 +1,43 @@
|
|
1
1
|
require_relative 'variable_presentation_hint'
|
2
2
|
|
3
|
+
# A Variable is a name/value pair. Optionally a variable can have a ‘type’ that is
|
4
|
+
# shown if space permits or when hovering over the variable’s name. An optional
|
5
|
+
# ‘kind’ is used to render additional properties of the variable, e.g. different
|
6
|
+
# icons can be used to indicate that a variable is public or private. If the value
|
7
|
+
# is structured (has children), a handle is provided to retrieve the children with
|
8
|
+
# the VariablesRequest. If the number of named or indexed children is large, the
|
9
|
+
# numbers should be returned via the optional ‘namedVariables’ and
|
10
|
+
# ‘indexedVariables’ attributes. The client can use this optional information to
|
11
|
+
# present the children in a paged UI and fetch them in chunks.
|
3
12
|
class DAP::Variable < DAP::Base
|
4
13
|
# The variable's name.
|
5
|
-
property :name
|
14
|
+
property :name, as: 'string'
|
6
15
|
|
7
16
|
# The variable's value. This can be a multi-line text, e.g. for a function the body of a function.
|
8
|
-
property :value
|
17
|
+
property :value, as: 'string'
|
9
18
|
|
10
19
|
# The type of the variable's value. Typically shown in the UI when hovering over the value.
|
11
20
|
# This attribute should only be returned by a debug adapter if the client has passed the value true for the 'supportsVariableType' capability of the 'initialize' request.
|
12
|
-
property :type, required: false
|
21
|
+
property :type, required: false, as: 'string'
|
13
22
|
|
14
23
|
# Properties of a variable that can be used to determine how to render the variable in the UI.
|
15
24
|
property :presentationHint, required: false, as: DAP::VariablePresentationHint
|
16
25
|
|
17
26
|
# Optional evaluatable name of this variable which can be passed to the 'EvaluateRequest' to fetch the variable's value.
|
18
|
-
property :evaluateName, required: false
|
27
|
+
property :evaluateName, required: false, as: 'string'
|
19
28
|
|
20
29
|
# If variablesReference is > 0, the variable is structured and its children can be retrieved by passing variablesReference to the VariablesRequest.
|
21
|
-
property :variablesReference
|
30
|
+
property :variablesReference, as: 'number'
|
22
31
|
|
23
32
|
# The number of named child variables.
|
24
33
|
# The client can use this optional information to present the children in a paged UI and fetch them in chunks.
|
25
|
-
property :namedVariables, required: false
|
34
|
+
property :namedVariables, required: false, as: 'number'
|
26
35
|
|
27
36
|
# The number of indexed child variables.
|
28
37
|
# The client can use this optional information to present the children in a paged UI and fetch them in chunks.
|
29
|
-
property :indexedVariables, required: false
|
38
|
+
property :indexedVariables, required: false, as: 'number'
|
30
39
|
|
31
40
|
# Optional memory reference for the variable if the variable represents executable code, such as a function pointer.
|
32
41
|
# This attribute is only required if the client has passed the value true for the 'supportsMemoryReferences' capability of the 'initialize' request.
|
33
|
-
property :memoryReference, required: false
|
42
|
+
property :memoryReference, required: false, as: 'string'
|
34
43
|
end
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# Optional properties of a variable that can be used to determine how to render
|
2
|
+
# the variable in the UI.
|
1
3
|
class DAP::VariablePresentationHint < DAP::Base
|
2
4
|
# The kind of variable. Before introducing additional values, try to use the listed values.
|
3
5
|
# Values:
|
@@ -14,7 +16,7 @@ class DAP::VariablePresentationHint < DAP::Base
|
|
14
16
|
# adapter for rendering purposes, e.g. an index range for large arrays.
|
15
17
|
# 'dataBreakpoint': Indicates that a data breakpoint is registered for the object.
|
16
18
|
# etc.
|
17
|
-
property :kind, required: false
|
19
|
+
property :kind, required: false, as: 'string'
|
18
20
|
|
19
21
|
# Set of attributes represented as an array of strings. Before introducing additional values, try to use the listed values.
|
20
22
|
# Values:
|
@@ -26,9 +28,9 @@ class DAP::VariablePresentationHint < DAP::Base
|
|
26
28
|
# 'canHaveObjectId': Indicates that the object has an Object ID associated with it.
|
27
29
|
# 'hasSideEffects': Indicates that the evaluation had side effects.
|
28
30
|
# etc.
|
29
|
-
property :attributes, required: false
|
31
|
+
property :attributes, required: false, as: 'string'
|
30
32
|
|
31
33
|
# Visibility of variable. Before introducing additional values, try to use the listed values.
|
32
34
|
# Values: 'public', 'private', 'protected', 'internal', 'final', etc.
|
33
|
-
property :visibility, required: false
|
35
|
+
property :visibility, required: false, as: 'string'
|
34
36
|
end
|
@@ -1,18 +1,19 @@
|
|
1
1
|
require_relative 'value_format'
|
2
2
|
|
3
|
+
# Arguments for ‘variables’ request.
|
3
4
|
class DAP::VariablesArguments < DAP::Base
|
4
5
|
# The Variable reference.
|
5
|
-
property :variablesReference
|
6
|
+
property :variablesReference, as: 'number'
|
6
7
|
|
7
8
|
# Optional filter to limit the child variables to either named or indexed. If omitted, both types are fetched.
|
8
9
|
# Values: 'indexed', 'named', etc.
|
9
|
-
property :filter, required: false
|
10
|
+
property :filter, required: false, as: 'string'
|
10
11
|
|
11
12
|
# The index of the first variable to return; if omitted children start at 0.
|
12
|
-
property :start, required: false
|
13
|
+
property :start, required: false, as: 'number'
|
13
14
|
|
14
15
|
# The number of variables to return. If count is missing or 0, all variables are returned.
|
15
|
-
property :count, required: false
|
16
|
+
property :count, required: false, as: 'number'
|
16
17
|
|
17
18
|
# Specifies details on how to format the Variable values.
|
18
19
|
# The attribute is only honored by a debug adapter if the capability 'supportsValueFormattingOptions' is true.
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby-dap
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ethan Reesor
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-10-
|
11
|
+
date: 2020-10-13 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Debug Adapter Protocol parsers and formatters
|
14
14
|
email: ethan.reesor@gmail.com
|