ruby-dap 0.1.2 → 0.1.3
Sign up to get free protection for your applications and to get access to all the features.
- 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
|