ruby-dap 0.1.0

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.
Files changed (123) hide show
  1. checksums.yaml +7 -0
  2. data/AUTHORS +7 -0
  3. data/LICENSE +201 -0
  4. data/lib/dap.rb +21 -0
  5. data/lib/dap/attach_request_arguments.rb +6 -0
  6. data/lib/dap/base.rb +145 -0
  7. data/lib/dap/breakpoint.rb +36 -0
  8. data/lib/dap/breakpoint_event_body.rb +10 -0
  9. data/lib/dap/breakpoint_location.rb +13 -0
  10. data/lib/dap/breakpoint_locations_arguments.rb +18 -0
  11. data/lib/dap/breakpoint_locations_response_body.rb +6 -0
  12. data/lib/dap/cancel_arguments.rb +9 -0
  13. data/lib/dap/capabilities.rb +110 -0
  14. data/lib/dap/capabilities_event_body.rb +6 -0
  15. data/lib/dap/checksum.rb +9 -0
  16. data/lib/dap/checksum_algorithm.rb +6 -0
  17. data/lib/dap/column_descriptor.rb +17 -0
  18. data/lib/dap/completion_item.rb +33 -0
  19. data/lib/dap/completion_item_type.rb +21 -0
  20. data/lib/dap/completions_arguments.rb +13 -0
  21. data/lib/dap/completions_response_body.rb +6 -0
  22. data/lib/dap/continue_arguments.rb +5 -0
  23. data/lib/dap/continue_response_body.rb +5 -0
  24. data/lib/dap/continued_event_body.rb +7 -0
  25. data/lib/dap/data_breakpoint.rb +16 -0
  26. data/lib/dap/data_breakpoint_access_type.rb +5 -0
  27. data/lib/dap/data_breakpoint_info_arguments.rb +8 -0
  28. data/lib/dap/data_breakpoint_info_response_body.rb +15 -0
  29. data/lib/dap/disassemble_arguments.rb +17 -0
  30. data/lib/dap/disassemble_response_body.rb +6 -0
  31. data/lib/dap/disassembled_instruction.rb +32 -0
  32. data/lib/dap/disconnect_arguments.rb +9 -0
  33. data/lib/dap/encoding.rb +47 -0
  34. data/lib/dap/enum.rb +28 -0
  35. data/lib/dap/error_response_body.rb +6 -0
  36. data/lib/dap/evaluate_arguments.rb +23 -0
  37. data/lib/dap/evaluate_response_body.rb +32 -0
  38. data/lib/dap/event.rb +42 -0
  39. data/lib/dap/exception_break_mode.rb +6 -0
  40. data/lib/dap/exception_breakpoints_filter.rb +10 -0
  41. data/lib/dap/exception_details.rb +21 -0
  42. data/lib/dap/exception_info_arguments.rb +4 -0
  43. data/lib/dap/exception_info_response_body.rb +16 -0
  44. data/lib/dap/exception_options.rb +11 -0
  45. data/lib/dap/exception_path_segment.rb +7 -0
  46. data/lib/dap/exited_event_body.rb +4 -0
  47. data/lib/dap/function_breakpoint.rb +13 -0
  48. data/lib/dap/goto_arguments.rb +7 -0
  49. data/lib/dap/goto_target.rb +22 -0
  50. data/lib/dap/goto_targets_arguments.rb +12 -0
  51. data/lib/dap/goto_targets_response_body.rb +6 -0
  52. data/lib/dap/initialize_request_arguments.rb +41 -0
  53. data/lib/dap/instruction_breakpoint.rb +18 -0
  54. data/lib/dap/invalidated_event_body.rb +10 -0
  55. data/lib/dap/launch_request_arguments.rb +9 -0
  56. data/lib/dap/loaded_source_event_body.rb +10 -0
  57. data/lib/dap/loaded_sources_response_body.rb +6 -0
  58. data/lib/dap/message.rb +23 -0
  59. data/lib/dap/module.rb +28 -0
  60. data/lib/dap/module_event_body.rb +10 -0
  61. data/lib/dap/modules_arguments.rb +7 -0
  62. data/lib/dap/modules_response_body.rb +9 -0
  63. data/lib/dap/next_arguments.rb +9 -0
  64. data/lib/dap/output_event_body.rb +36 -0
  65. data/lib/dap/pause_arguments.rb +4 -0
  66. data/lib/dap/process_event_body.rb +21 -0
  67. data/lib/dap/progress_end_event_body.rb +7 -0
  68. data/lib/dap/progress_start_event_body.rb +24 -0
  69. data/lib/dap/progress_update_event_body.rb +10 -0
  70. data/lib/dap/protocol_message.rb +38 -0
  71. data/lib/dap/read_memory_arguments.rb +10 -0
  72. data/lib/dap/read_memory_response_body.rb +12 -0
  73. data/lib/dap/relation.rb +28 -0
  74. data/lib/dap/request.rb +91 -0
  75. data/lib/dap/response.rb +86 -0
  76. data/lib/dap/restart_frame_arguments.rb +4 -0
  77. data/lib/dap/reverse_continue_arguments.rb +4 -0
  78. data/lib/dap/run_in_terminal_request_arguments.rb +17 -0
  79. data/lib/dap/run_in_terminal_response_body.rb +7 -0
  80. data/lib/dap/scope.rb +43 -0
  81. data/lib/dap/scopes_arguments.rb +4 -0
  82. data/lib/dap/scopes_response_body.rb +6 -0
  83. data/lib/dap/set_breakpoints_arguments.rb +16 -0
  84. data/lib/dap/set_breakpoints_response_body.rb +7 -0
  85. data/lib/dap/set_data_breakpoints_arguments.rb +6 -0
  86. data/lib/dap/set_data_breakpoints_response_body.rb +6 -0
  87. data/lib/dap/set_exception_breakpoints_arguments.rb +10 -0
  88. data/lib/dap/set_expression_arguments.rb +15 -0
  89. data/lib/dap/set_expression_response_body.rb +27 -0
  90. data/lib/dap/set_function_breakpoints_arguments.rb +6 -0
  91. data/lib/dap/set_function_breakpoints_response_body.rb +6 -0
  92. data/lib/dap/set_instruction_breakpoints_arguments.rb +6 -0
  93. data/lib/dap/set_instruction_breakpoints_response_body.rb +6 -0
  94. data/lib/dap/set_variable_arguments.rb +15 -0
  95. data/lib/dap/set_variable_response_body.rb +21 -0
  96. data/lib/dap/source.rb +35 -0
  97. data/lib/dap/source_arguments.rb +10 -0
  98. data/lib/dap/source_breakpoint.rb +21 -0
  99. data/lib/dap/source_response_body.rb +7 -0
  100. data/lib/dap/stack_frame.rb +36 -0
  101. data/lib/dap/stack_frame_format.rb +24 -0
  102. data/lib/dap/stack_trace_arguments.rb +16 -0
  103. data/lib/dap/stack_trace_response_body.rb +10 -0
  104. data/lib/dap/step_back_arguments.rb +9 -0
  105. data/lib/dap/step_in_arguments.rb +12 -0
  106. data/lib/dap/step_in_target.rb +7 -0
  107. data/lib/dap/step_in_targets_arguments.rb +4 -0
  108. data/lib/dap/step_in_targets_response_body.rb +6 -0
  109. data/lib/dap/step_out_arguments.rb +9 -0
  110. data/lib/dap/stepping_granularity.rb +5 -0
  111. data/lib/dap/stopped_event_body.rb +23 -0
  112. data/lib/dap/terminate_arguments.rb +4 -0
  113. data/lib/dap/terminate_threads_arguments.rb +4 -0
  114. data/lib/dap/terminated_event_body.rb +5 -0
  115. data/lib/dap/thread.rb +7 -0
  116. data/lib/dap/thread_event_body.rb +8 -0
  117. data/lib/dap/threads_response_body.rb +6 -0
  118. data/lib/dap/value_format.rb +4 -0
  119. data/lib/dap/variable.rb +34 -0
  120. data/lib/dap/variable_presentation_hint.rb +34 -0
  121. data/lib/dap/variables_arguments.rb +20 -0
  122. data/lib/dap/variables_response_body.rb +6 -0
  123. metadata +163 -0
@@ -0,0 +1,7 @@
1
+ class DAP::RunInTerminalResponseBody < DAP::Base
2
+ # The process ID. The value should be less than or equal to 2147483647 (2^31 - 1).
3
+ property :processId, required: false
4
+
5
+ # The process ID of the terminal shell. The value should be less than or equal to 2147483647 (2^31 - 1).
6
+ property :shellProcessId, required: false
7
+ end
@@ -0,0 +1,43 @@
1
+ require_relative 'source'
2
+
3
+ class DAP::Scope < DAP::Base
4
+ # Name of the scope such as 'Arguments', 'Locals', or 'Registers'. This string is shown in the UI as is and can be translated.
5
+ property :name
6
+
7
+ # An optional hint for how to present this scope in the UI. If this attribute is missing, the scope is shown with a generic UI.
8
+ # Values:
9
+ # 'arguments': Scope contains method arguments.
10
+ # 'locals': Scope contains local variables.
11
+ # 'registers': Scope contains registers. Only a single 'registers' scope should be returned from a 'scopes' request.
12
+ # etc.
13
+ property :presentationHint, required: false # 'arguments' | 'locals' | 'registers' | string
14
+
15
+ # The variables of this scope can be retrieved by passing the value of variablesReference to the VariablesRequest.
16
+ property :variablesReference
17
+
18
+ # The number of named variables in this scope.
19
+ # The client can use this optional information to present the variables in a paged UI and fetch them in chunks.
20
+ property :namedVariables, required: false
21
+
22
+ # The number of indexed variables in this scope.
23
+ # The client can use this optional information to present the variables in a paged UI and fetch them in chunks.
24
+ property :indexedVariables, required: false
25
+
26
+ # If true, the number of variables in this scope is large or expensive to retrieve.
27
+ property :expensive
28
+
29
+ # Optional source for this scope.
30
+ property :source, required: false, as: DAP::Source
31
+
32
+ # Optional start line of the range covered by this scope.
33
+ property :line, required: false
34
+
35
+ # Optional start column of the range covered by this scope.
36
+ property :column, required: false
37
+
38
+ # Optional end line of the range covered by this scope.
39
+ property :endLine, required: false
40
+
41
+ # Optional end column of the range covered by this scope.
42
+ property :endColumn, required: false
43
+ end
@@ -0,0 +1,4 @@
1
+ class DAP::ScopesArguments < DAP::Base
2
+ # Retrieve the scopes for this stackframe.
3
+ property :frameId
4
+ end
@@ -0,0 +1,6 @@
1
+ require_relative 'scope'
2
+
3
+ class DAP::ScopesResponseBody < DAP::Base
4
+ # The scopes of the stackframe. If the array has length zero, there are no scopes available.
5
+ property :scopes, as: many(DAP::Scope)
6
+ end
@@ -0,0 +1,16 @@
1
+ require_relative 'source'
2
+ require_relative 'source_breakpoint'
3
+
4
+ class DAP::SetBreakpointsArguments < DAP::Base
5
+ # The source location of the breakpoints; either 'source.path' or 'source.reference' must be specified.
6
+ property :source, as: DAP::Source
7
+
8
+ # The code locations of the breakpoints.
9
+ property :breakpoints, required: false, as: many(DAP::SourceBreakpoint)
10
+
11
+ # Deprecated: The code locations of the breakpoints.
12
+ property :lines, required: false
13
+
14
+ # A value of true indicates that the underlying source has been modified which results in new breakpoint locations.
15
+ property :sourceModified, required: false
16
+ end
@@ -0,0 +1,7 @@
1
+ require_relative 'breakpoint'
2
+
3
+ class DAP::SetBreakpointsResponseBody < DAP::Base
4
+ # Information about the breakpoints.
5
+ # The array elements are in the same order as the elements of the 'breakpoints' (or the deprecated 'lines') array in the arguments.
6
+ property :breakpoints, as: many(DAP::Breakpoint)
7
+ end
@@ -0,0 +1,6 @@
1
+ require_relative 'data_breakpoint'
2
+
3
+ class DAP::SetDataBreakpointsArguments < DAP::Base
4
+ # The contents of this array replaces all existing data breakpoints. An empty array clears all data breakpoints.
5
+ property :breakpoints, as: many(DAP::DataBreakpoint)
6
+ end
@@ -0,0 +1,6 @@
1
+ require_relative 'breakpoint'
2
+
3
+ class DAP::SetDataBreakpointsResponseBody < DAP::Base
4
+ # Information about the data breakpoints. The array elements correspond to the elements of the input argument 'breakpoints' array.
5
+ property :breakpoints, as: many(DAP::Breakpoint)
6
+ end
@@ -0,0 +1,10 @@
1
+ require_relative 'exception_options'
2
+
3
+ class DAP::SetExceptionBreakpointsArguments < DAP::Base
4
+ # IDs of checked exception options. The set of IDs is returned via the 'exceptionBreakpointFilters' capability.
5
+ property :filters
6
+
7
+ # Configuration options for selected exceptions.
8
+ # The attribute is only honored by a debug adapter if the capability 'supportsExceptionOptions' is true.
9
+ property :exceptionOptions, required: false, as: many(DAP::ExceptionOptions)
10
+ end
@@ -0,0 +1,15 @@
1
+ require_relative 'value_format'
2
+
3
+ class DAP::SetExpressionArguments < DAP::Base
4
+ # The l-value expression to assign to.
5
+ property :expression
6
+
7
+ # The value expression to assign to the l-value expression.
8
+ property :value
9
+
10
+ # Evaluate the expressions in the scope of this stack frame. If not specified, the expressions are evaluated in the global scope.
11
+ property :frameId, required: false
12
+
13
+ # Specifies how the resulting value should be formatted.
14
+ property :format, required: false, as: DAP::ValueFormat
15
+ end
@@ -0,0 +1,27 @@
1
+ require_relative 'variable_presentation_hint'
2
+
3
+ class DAP::SetExpressionResponseBody < DAP::Base
4
+ # The new value of the expression.
5
+ property :value
6
+
7
+ # The optional type of the value.
8
+ # 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.
9
+ property :type, required: false
10
+
11
+ # Properties of a value that can be used to determine how to render the result in the UI.
12
+ property :presentationHint, required: false, as: DAP::VariablePresentationHint
13
+
14
+ # If variablesReference is > 0, the value is structured and its children can be retrieved by passing variablesReference to the VariablesRequest.
15
+ # The value should be less than or equal to 2147483647 (2^31 - 1).
16
+ property :variablesReference, required: false
17
+
18
+ # The number of named child variables.
19
+ # The client can use this optional information to present the variables in a paged UI and fetch them in chunks.
20
+ # The value should be less than or equal to 2147483647 (2^31 - 1).
21
+ property :namedVariables, required: false
22
+
23
+ # The number of indexed child variables.
24
+ # The client can use this optional information to present the variables in a paged UI and fetch them in chunks.
25
+ # The value should be less than or equal to 2147483647 (2^31 - 1).
26
+ property :indexedVariables, required: false
27
+ end
@@ -0,0 +1,6 @@
1
+ require_relative 'function_breakpoint'
2
+
3
+ class DAP::SetFunctionBreakpointsArguments < DAP::Base
4
+ # The function names of the breakpoints.
5
+ property :breakpoints, as: many(DAP::FunctionBreakpoint)
6
+ end
@@ -0,0 +1,6 @@
1
+ require_relative 'breakpoint'
2
+
3
+ class DAP::SetFunctionBreakpointsResponseBody < DAP::Base
4
+ # Information about the breakpoints. The array elements correspond to the elements of the 'breakpoints' array.
5
+ property :breakpoints, as: many(DAP::Breakpoint)
6
+ end
@@ -0,0 +1,6 @@
1
+ require_relative 'instruction_breakpoint'
2
+
3
+ class DAP::SetInstructionBreakpointsArguments < DAP::Base
4
+ # The instruction references of the breakpoints
5
+ property :breakpoints, as: many(DAP::InstructionBreakpoint)
6
+ end
@@ -0,0 +1,6 @@
1
+ require_relative 'breakpoint'
2
+
3
+ class DAP::SetInstructionBreakpointsResponseBody < DAP::Base
4
+ # Information about the breakpoints. The array elements correspond to the elements of the 'breakpoints' array.
5
+ property :breakpoints, as: many(DAP::Breakpoint)
6
+ end
@@ -0,0 +1,15 @@
1
+ require_relative 'value_format'
2
+
3
+ class DAP::SetVariableArguments < DAP::Base
4
+ # The reference of the variable container.
5
+ property :variablesReference
6
+
7
+ # The name of the variable in the container.
8
+ property :name
9
+
10
+ # The value of the variable.
11
+ property :value
12
+
13
+ # Specifies details on how to format the response value.
14
+ property :format, required: false, as: DAP::ValueFormat
15
+ end
@@ -0,0 +1,21 @@
1
+ class DAP::SetVariableResponseBody < DAP::Base
2
+ # The new value of the variable.
3
+ property :value
4
+
5
+ # The type of the new value. Typically shown in the UI when hovering over the value.
6
+ property :type, required: false
7
+
8
+ # If variablesReference is > 0, the new value is structured and its children can be retrieved by passing variablesReference to the VariablesRequest.
9
+ # The value should be less than or equal to 2147483647 (2^31 - 1).
10
+ property :variablesReference, required: false
11
+
12
+ # The number of named child variables.
13
+ # The client can use this optional information to present the variables in a paged UI and fetch them in chunks.
14
+ # The value should be less than or equal to 2147483647 (2^31 - 1).
15
+ property :namedVariables, required: false
16
+
17
+ # The number of indexed child variables.
18
+ # The client can use this optional information to present the variables in a paged UI and fetch them in chunks.
19
+ # The value should be less than or equal to 2147483647 (2^31 - 1).
20
+ property :indexedVariables, required: false
21
+ end
@@ -0,0 +1,35 @@
1
+ require_relative 'source'
2
+ require_relative 'checksum'
3
+
4
+ class DAP::Source < DAP::Base
5
+ # The short name of the source. Every source returned from the debug adapter has a name.
6
+ # When sending a source to the debug adapter this name is optional.
7
+ property :name, required: false
8
+
9
+ # The path of the source to be shown in the UI.
10
+ # It is only used to locate and load the content of the source if no sourceReference is specified (or its value is 0).
11
+ property :path, required: false
12
+
13
+ # If sourceReference > 0 the contents of the source must be retrieved through the SourceRequest (even if a path is specified).
14
+ # A sourceReference is only valid for a session, so it must not be used to persist a source.
15
+ # The value should be less than or equal to 2147483647 (2^31 - 1).
16
+ property :sourceReference, required: false
17
+
18
+ # An optional hint for how to present the source in the UI.
19
+ # A value of 'deemphasize' can be used to indicate that the source is not available or that it is skipped on stepping.
20
+ # Values: 'normal', 'emphasize', 'deemphasize', etc.
21
+ property :presentationHint, required: false # 'normal' | 'emphasize' | 'deemphasize'
22
+
23
+ # The (optional) origin of this source: possible values 'internal module', 'inlined content from source map', etc.
24
+ property :origin, required: false
25
+
26
+ # An optional list of sources that are related to this source. These may be the source that generated this source.
27
+ property :sources, required: false, as: many(DAP::Source)
28
+
29
+ # Optional data that a debug adapter might want to loop through the client.
30
+ # The client should leave the data intact and persist it across sessions. The client should not interpret the data.
31
+ property :adapterData, required: false
32
+
33
+ # The checksums associated with this file.
34
+ property :checksums, required: false, as: many(DAP::Checksum)
35
+ end
@@ -0,0 +1,10 @@
1
+ require_relative 'source'
2
+
3
+ class DAP::SourceArguments < DAP::Base
4
+ # Specifies the source content to load. Either source.path or source.sourceReference must be specified.
5
+ property :source, required: false, as: DAP::Source
6
+
7
+ # The reference to the source. This is the same as source.sourceReference.
8
+ # This is provided for backward compatibility since old backends do not understand the 'source' attribute.
9
+ property :sourceReference
10
+ end
@@ -0,0 +1,21 @@
1
+ class DAP::SourceBreakpoint < DAP::Base
2
+ # The source line of the breakpoint or logpoint.
3
+ property :line
4
+
5
+ # An optional source column of the breakpoint.
6
+ property :column, required: false
7
+
8
+ # An optional expression for conditional breakpoints.
9
+ # It is only honored by a debug adapter if the capability 'supportsConditionalBreakpoints' is true.
10
+ property :condition, required: false
11
+
12
+ # An optional expression that controls how many hits of the breakpoint are ignored.
13
+ # The backend is expected to interpret the expression as needed.
14
+ # The attribute is only honored by a debug adapter if the capability 'supportsHitConditionalBreakpoints' is true.
15
+ property :hitCondition, required: false
16
+
17
+ # If this attribute exists and is non-empty, the backend must not 'break' (stop)
18
+ # but log the message instead. Expressions within {} are interpolated.
19
+ # The attribute is only honored by a debug adapter if the capability 'supportsLogPoints' is true.
20
+ property :logMessage, required: false
21
+ end
@@ -0,0 +1,7 @@
1
+ class DAP::SourceResponseBody < DAP::Base
2
+ # Content of the source reference.
3
+ property :content
4
+
5
+ # Optional content type (mime type) of the source.
6
+ property :mimeType, required: false
7
+ end
@@ -0,0 +1,36 @@
1
+ require_relative 'source'
2
+
3
+ class DAP::StackFrame < DAP::Base
4
+ # An identifier for the stack frame. It must be unique across all threads.
5
+ # This id can be used to retrieve the scopes of the frame with the 'scopesRequest' or to restart the execution of a stackframe.
6
+ property :id
7
+
8
+ # The name of the stack frame, typically a method name.
9
+ property :name
10
+
11
+ # The optional source of the frame.
12
+ property :source, required: false, as: DAP::Source
13
+
14
+ # The line within the file of the frame. If source is null or doesn't exist, line is 0 and must be ignored.
15
+ property :line
16
+
17
+ # The column within the line. If source is null or doesn't exist, column is 0 and must be ignored.
18
+ property :column
19
+
20
+ # An optional end line of the range covered by the stack frame.
21
+ property :endLine, required: false
22
+
23
+ # An optional end column of the range covered by the stack frame.
24
+ property :endColumn, required: false
25
+
26
+ # Optional memory reference for the current instruction pointer in this frame.
27
+ property :instructionPointerReference, required: false
28
+
29
+ # The module associated with this frame, if any.
30
+ property :moduleId, required: false
31
+
32
+ # An optional hint for how to present this frame in the UI.
33
+ # A value of 'label' can be used to indicate that the frame is an artificial frame that is used as a visual label or separator. A value of 'subtle' can be used to change the appearance of a frame in a 'subtle' way.
34
+ # Values: 'normal', 'label', 'subtle', etc.
35
+ property :presentationHint, required: false # 'normal' | 'label' | 'subtle'
36
+ end
@@ -0,0 +1,24 @@
1
+ require_relative 'value_format'
2
+
3
+ class DAP::StackFrameFormat < DAP::ValueFormat
4
+ # Displays parameters for the stack frame.
5
+ property :parameters, required: false
6
+
7
+ # Displays the types of parameters for the stack frame.
8
+ property :parameterTypes, required: false
9
+
10
+ # Displays the names of parameters for the stack frame.
11
+ property :parameterNames, required: false
12
+
13
+ # Displays the values of parameters for the stack frame.
14
+ property :parameterValues, required: false
15
+
16
+ # Displays the line number of the stack frame.
17
+ property :line, required: false
18
+
19
+ # Displays the module of the stack frame.
20
+ property :module, required: false
21
+
22
+ # Includes all stack frames, including those the debug adapter might otherwise hide.
23
+ property :includeAll, required: false
24
+ end
@@ -0,0 +1,16 @@
1
+ require_relative 'stack_frame_format'
2
+
3
+ class DAP::StackTraceArguments < DAP::Base
4
+ # Retrieve the stacktrace for this thread.
5
+ property :threadId
6
+
7
+ # The index of the first frame to return; if omitted frames start at 0.
8
+ property :startFrame, required: false
9
+
10
+ # The maximum number of frames to return. If levels is not specified or 0, all frames are returned.
11
+ property :levels, required: false
12
+
13
+ # Specifies details on how to format the stack frames.
14
+ # The attribute is only honored by a debug adapter if the capability 'supportsValueFormattingOptions' is true.
15
+ property :format, required: false, as: DAP::StackFrameFormat
16
+ end
@@ -0,0 +1,10 @@
1
+ require_relative 'stack_frame'
2
+
3
+ class DAP::StackTraceResponseBody < DAP::Base
4
+ # The frames of the stackframe. If the array has length zero, there are no stackframes available.
5
+ # This means that there is no location information available.
6
+ property :stackFrames, as: many(DAP::StackFrame)
7
+
8
+ # The total number of frames available.
9
+ property :totalFrames, required: false
10
+ end
@@ -0,0 +1,9 @@
1
+ require_relative 'stepping_granularity'
2
+
3
+ class DAP::StepBackArguments < DAP::Base
4
+ # Execute 'stepBack' for this thread.
5
+ property :threadId
6
+
7
+ # Optional granularity to step. If no granularity is specified, a granularity of 'statement' is assumed.
8
+ property :granularity, required: false, as: DAP::SteppingGranularity
9
+ end
@@ -0,0 +1,12 @@
1
+ require_relative 'stepping_granularity'
2
+
3
+ class DAP::StepInArguments < DAP::Base
4
+ # Execute 'stepIn' for this thread.
5
+ property :threadId
6
+
7
+ # Optional id of the target to step into.
8
+ property :targetId, required: false
9
+
10
+ # Optional granularity to step. If no granularity is specified, a granularity of 'statement' is assumed.
11
+ property :granularity, required: false, as: DAP::SteppingGranularity
12
+ end
@@ -0,0 +1,7 @@
1
+ class DAP::StepInTarget < DAP::Base
2
+ # Unique identifier for a stepIn target.
3
+ property :id
4
+
5
+ # The name of the stepIn target (shown in the UI).
6
+ property :label
7
+ end
@@ -0,0 +1,4 @@
1
+ class DAP::StepInTargetsArguments < DAP::Base
2
+ # The stack frame for which to retrieve the possible stepIn targets.
3
+ property :frameId
4
+ end