lldb 0.2.0 → 0.3.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +43 -4
- data/README.md +86 -2
- data/Rakefile +36 -0
- data/bindings/constants.yml +137 -0
- data/bindings/surface.yml +3072 -0
- data/ext/lldb/discovery.rb +101 -0
- data/ext/lldb/extconf.rb +206 -88
- data/ext/lldb/lldb_wrapper.cpp +7934 -877
- data/ext/lldb/lldb_wrapper.h +596 -333
- data/lib/lldb/address.rb +81 -0
- data/lib/lldb/api_support.rb +23 -6
- data/lib/lldb/attach_info.rb +122 -0
- data/lib/lldb/block.rb +121 -0
- data/lib/lldb/breakpoint.rb +11 -6
- data/lib/lldb/breakpoint_location.rb +20 -5
- data/lib/lldb/broadcaster.rb +79 -0
- data/lib/lldb/command_interpreter.rb +9 -4
- data/lib/lldb/command_return_object.rb +24 -5
- data/lib/lldb/compile_unit.rb +64 -0
- data/lib/lldb/context.rb +81 -0
- data/lib/lldb/debugger.rb +55 -12
- data/lib/lldb/error.rb +50 -3
- data/lib/lldb/event.rb +109 -0
- data/lib/lldb/expression_options.rb +124 -0
- data/lib/lldb/ffi_bindings.rb +313 -31
- data/lib/lldb/file_spec.rb +90 -0
- data/lib/lldb/file_spec_list.rb +78 -0
- data/lib/lldb/frame.rb +109 -17
- data/lib/lldb/function.rb +121 -0
- data/lib/lldb/instruction.rb +83 -0
- data/lib/lldb/instruction_list.rb +68 -0
- data/lib/lldb/launch_info.rb +145 -19
- data/lib/lldb/line_entry.rb +75 -0
- data/lib/lldb/listener.rb +96 -0
- data/lib/lldb/memory_region_info.rb +8 -3
- data/lib/lldb/module.rb +46 -5
- data/lib/lldb/native.rb +36 -0
- data/lib/lldb/native_buffer.rb +32 -0
- data/lib/lldb/native_handle.rb +60 -0
- data/lib/lldb/native_lifecycle.rb +64 -0
- data/lib/lldb/native_string_array.rb +34 -0
- data/lib/lldb/process.rb +102 -40
- data/lib/lldb/symbol.rb +117 -0
- data/lib/lldb/symbol_context.rb +9 -4
- data/lib/lldb/target.rb +69 -67
- data/lib/lldb/thread.rb +51 -18
- data/lib/lldb/type.rb +40 -3
- data/lib/lldb/type_member.rb +67 -0
- data/lib/lldb/types.rb +69 -4
- data/lib/lldb/value.rb +27 -17
- data/lib/lldb/value_list.rb +9 -5
- data/lib/lldb/version.rb +1 -1
- data/lib/lldb/watchpoint.rb +26 -9
- data/lib/lldb.rb +78 -10
- data/lldb.gemspec +4 -1
- data/rbs_collection.yaml +1 -1
- data/script/check_bindings +259 -0
- data/script/guard_c_exports +139 -0
- data/sig/lldb/ffi_bindings.rbs +247 -21
- data/sig/lldb/weak_ref.rbs +7 -0
- metadata +30 -6
- data/ext/lldb/Makefile +0 -24
- data/ext/lldb/liblldb_wrapper.dylib +0 -0
- data/ext/lldb/lldb_wrapper.o +0 -0
- data/ext/lldb/mkmf.log +0 -24
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 6e620343dac990365f90f32d8bd349abee9969a5f3cf51ddd255ab8b37e739ea
|
|
4
|
+
data.tar.gz: 527026156a888a96244a6687a31559bafcfb619b0c4eb91c96799689a02fbe90
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: '087ad913a4adcc1db493e844ff844ea1fb6a86f01199606a9af606f5016d7e08a6fde5866842b9ffb7e1e2008e71d0e08e7de6094f1f9d6d51589239d9d0ee5d'
|
|
7
|
+
data.tar.gz: ebdfcbf627a830bc905cf41d80d5c6526039a96ae432f4c8fc1bcfec818c72486191d036a86a3c348cb4256c34739ba5d920b26578f13e47ac660e1e98efbcc7
|
data/CHANGELOG.md
CHANGED
|
@@ -1,12 +1,51 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/).
|
|
7
|
+
|
|
8
|
+
## [Unreleased]
|
|
9
|
+
|
|
10
|
+
## [0.3.0] - 2026-08-12
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
|
|
14
|
+
- Expose thread step modes and command return statuses, and return `nil` from `Process#send_async_interrupt`.
|
|
15
|
+
- Add explicit broadcaster, listener, and event handles for LLDB state events.
|
|
16
|
+
- Add `source_init_files`, `LaunchInfo`, `AttachInfo`, and `ExpressionOptions` controls.
|
|
17
|
+
- Expose structured `FileSpec`, `Address`, `LineEntry`, and `FileSpecList` objects with dynamically sized path buffers and LLDB sentinel constants.
|
|
18
|
+
- Expose `TypeMember` metadata for fields and direct or virtual base classes.
|
|
19
|
+
- Expose structured `Symbol`, `Function`, `CompileUnit`, and `Block` objects from modules and frames.
|
|
20
|
+
- Expose structured instruction lists and instruction bytes from frames.
|
|
21
|
+
- Add LLDB discovery and compile/link validation for Linux and macOS builds.
|
|
22
|
+
- Expose wrapper ABI and LLDB version metadata with capability-based watchpoint access checks.
|
|
23
|
+
- Add binding parity, surface-ledger, reproducible RBS, and sanitizer checks.
|
|
24
|
+
|
|
25
|
+
### Changed
|
|
26
|
+
|
|
27
|
+
- Preserve LLDB operation status, error type, and operation context.
|
|
28
|
+
- Make `Target#launch` preserve LLDB launch semantics without implicit flags, polling, or auto-continue.
|
|
29
|
+
- Release Ruby's GVL around launch, attach, continue, stepping, and command execution calls.
|
|
30
|
+
- Normalize basic type values across LLDB versions.
|
|
31
|
+
- Pin the RBS collection revision and verify generated RBS deterministically.
|
|
32
|
+
|
|
33
|
+
### Fixed
|
|
34
|
+
|
|
35
|
+
- Report native wrapper exceptions as `InternalBindingError`.
|
|
36
|
+
- Add idempotent native handles, shared debugger contexts, and deterministic debugger close.
|
|
37
|
+
- Make native finalizer release safe under GC stress.
|
|
38
|
+
- Prevent native build artifacts from leaking into built gems.
|
|
39
|
+
|
|
40
|
+
## [0.2.0] - 2026-01-04
|
|
41
|
+
|
|
42
|
+
### Added
|
|
6
43
|
|
|
7
44
|
- Add MemoryRegionInfo bindings.
|
|
8
45
|
- Add APISupport module for feature detection.
|
|
9
46
|
|
|
10
|
-
## 0.1.0 - 2025-12-30
|
|
47
|
+
## [0.1.0] - 2025-12-30
|
|
48
|
+
|
|
49
|
+
### Added
|
|
11
50
|
|
|
12
|
-
- Initial release.
|
|
51
|
+
- Initial release.
|
data/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# LLDB Ruby
|
|
1
|
+
# LLDB Ruby [](https://badge.fury.io/rb/lldb) [](https://github.com/ydah/lldb-ruby/actions/workflows/ci.yml)
|
|
2
2
|
|
|
3
3
|
Ruby bindings for the LLDB debugger.
|
|
4
4
|
|
|
@@ -9,7 +9,7 @@ This gem provides Ruby bindings for LLDB (Low Level Debugger), allowing you to a
|
|
|
9
9
|
## Requirements
|
|
10
10
|
|
|
11
11
|
- Ruby 3.0 or later
|
|
12
|
-
- LLDB 14 or later
|
|
12
|
+
- LLDB 14 or later (Linux and macOS)
|
|
13
13
|
- C++17 compatible compiler (gcc 8+ / clang 10+)
|
|
14
14
|
- libffi-dev (for the FFI gem)
|
|
15
15
|
|
|
@@ -165,6 +165,53 @@ if var && var.valid?
|
|
|
165
165
|
end
|
|
166
166
|
```
|
|
167
167
|
|
|
168
|
+
`Target#launch` passes the launch request directly to LLDB. It does not add
|
|
169
|
+
`STOP_AT_ENTRY`, wait for a state transition, or auto-continue to a breakpoint.
|
|
170
|
+
Set `launch_flags: LLDB::LaunchFlags::STOP_AT_ENTRY` explicitly when that
|
|
171
|
+
behavior is required; callers are responsible for waiting on asynchronous
|
|
172
|
+
processes.
|
|
173
|
+
|
|
174
|
+
### Handling Events Explicitly
|
|
175
|
+
|
|
176
|
+
Use LLDB's listener queue when asynchronous state changes are needed:
|
|
177
|
+
|
|
178
|
+
```ruby
|
|
179
|
+
listener = debugger.listener
|
|
180
|
+
broadcaster = process.broadcaster
|
|
181
|
+
listener.start_listening_for_events(broadcaster, LLDB::Process::BroadcastBit::STATE_CHANGED)
|
|
182
|
+
|
|
183
|
+
if (event = listener.wait_for_event(timeout_seconds: 1))
|
|
184
|
+
puts "state = #{LLDB::State.name(event.process_state)}"
|
|
185
|
+
end
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
`timeout_seconds: 0` performs a non-blocking poll. The library does not start
|
|
189
|
+
background event threads.
|
|
190
|
+
|
|
191
|
+
Source locations remain structured when needed: `Frame#line_entry` exposes its
|
|
192
|
+
`LineEntry`, including `start_address`, `end_address`, file, line, and column;
|
|
193
|
+
`BreakpointLocation#address` exposes an `Address` with separate
|
|
194
|
+
`file_address` and `load_address` values. `FileSpecList` can collect and return
|
|
195
|
+
`FileSpec` objects without reducing them to path strings.
|
|
196
|
+
|
|
197
|
+
Type inspection also preserves member metadata. Use `Type#field_at_index`,
|
|
198
|
+
`#direct_base_class_at_index`, or `#virtual_base_class_at_index` to obtain a
|
|
199
|
+
`TypeMember` with its name, type, byte/bit offset, and bitfield width.
|
|
200
|
+
|
|
201
|
+
Modules and frames expose structured debug objects as well: use
|
|
202
|
+
`Module#symbol_at_index`, `Frame#function`, `Frame#symbol`,
|
|
203
|
+
`Frame#compile_unit`, and `Frame#block` to retain symbol, function, source
|
|
204
|
+
unit, and lexical block metadata.
|
|
205
|
+
|
|
206
|
+
For structured disassembly, use `Frame#instruction_list`. Each
|
|
207
|
+
`Instruction` exposes its address, mnemonic, operands, comment, byte size, and
|
|
208
|
+
raw bytes; the existing `Frame#disassemble` string API remains available.
|
|
209
|
+
|
|
210
|
+
Debugger and launch choices are explicit option objects. For example,
|
|
211
|
+
`LLDB::Debugger.create(source_init_files: true)` opts into LLDB init files,
|
|
212
|
+
while `LLDB::ExpressionOptions` can be passed to expression evaluation without
|
|
213
|
+
changing the no-options call path.
|
|
214
|
+
|
|
168
215
|
### Working with Threads
|
|
169
216
|
|
|
170
217
|
```ruby
|
|
@@ -196,8 +243,18 @@ process = target.attach(pid: 12345)
|
|
|
196
243
|
- `LLDB::Thread` - Represents an execution thread
|
|
197
244
|
- `LLDB::Frame` - Represents a stack frame
|
|
198
245
|
- `LLDB::Breakpoint` - Represents a breakpoint
|
|
246
|
+
- `LLDB::BreakpointLocation` - Represents a breakpoint location
|
|
199
247
|
- `LLDB::Value` - Represents a variable or expression result
|
|
248
|
+
- `LLDB::Type` - Represents debug type information
|
|
249
|
+
- `LLDB::TypeMember` - Represents a field or base-class member
|
|
200
250
|
- `LLDB::Module` - Represents a loaded module
|
|
251
|
+
- `LLDB::Symbol` - Represents a symbol
|
|
252
|
+
- `LLDB::Function` - Represents a function
|
|
253
|
+
- `LLDB::CompileUnit` - Represents a compilation unit
|
|
254
|
+
- `LLDB::Block` - Represents a lexical block
|
|
255
|
+
- `LLDB::InstructionList` / `LLDB::Instruction` - Represents structured disassembly
|
|
256
|
+
- `LLDB::FileSpec` / `LLDB::Address` / `LLDB::LineEntry` - Represents source locations
|
|
257
|
+
- `LLDB::Listener` / `LLDB::Event` / `LLDB::Broadcaster` - Represents LLDB events
|
|
201
258
|
- `LLDB::Error` - Represents an error from LLDB
|
|
202
259
|
|
|
203
260
|
### Constants
|
|
@@ -209,9 +266,22 @@ Process states are available in `LLDB::State`:
|
|
|
209
266
|
Stop reasons are available in `LLDB::StopReason`:
|
|
210
267
|
- `INVALID`, `NONE`, `TRACE`, `BREAKPOINT`, `WATCHPOINT`
|
|
211
268
|
- `SIGNAL`, `EXCEPTION`, `EXEC`, `PLAN_COMPLETE`, `THREAD_EXITING`, `INSTRUMENTATION`
|
|
269
|
+
- `PROCESSOR_TRACE`, `FORK`, `VFORK`, `VFORK_DONE`
|
|
212
270
|
|
|
213
271
|
## Development
|
|
214
272
|
|
|
273
|
+
The native wrapper build discovers LLDB in this order:
|
|
274
|
+
|
|
275
|
+
1. `--with-lldb-include` and `--with-lldb-lib`
|
|
276
|
+
2. `--with-lldb-dir`
|
|
277
|
+
3. `LLDB_DIR`
|
|
278
|
+
4. `llvm-config` or a versioned `llvm-config-N` on `PATH`
|
|
279
|
+
5. Homebrew, Xcode, and standard LLVM prefixes
|
|
280
|
+
|
|
281
|
+
Discovery succeeds only after compiling and linking a C++17 probe against
|
|
282
|
+
`liblldb`. The selected paths and optional API capabilities are printed during
|
|
283
|
+
the build. Windows is not a supported platform yet.
|
|
284
|
+
|
|
215
285
|
After checking out the repo, run:
|
|
216
286
|
|
|
217
287
|
```bash
|
|
@@ -220,6 +290,20 @@ cd ext/lldb && ruby extconf.rb && make && cd ../..
|
|
|
220
290
|
bundle exec rspec
|
|
221
291
|
```
|
|
222
292
|
|
|
293
|
+
Binding and type-surface checks can be run with:
|
|
294
|
+
|
|
295
|
+
```bash
|
|
296
|
+
bundle exec rake bindings:check
|
|
297
|
+
bundle exec rake rbs:verify
|
|
298
|
+
```
|
|
299
|
+
|
|
300
|
+
`bindings/surface.yml` records the classification and exception-safety review
|
|
301
|
+
for every native export. Update it together with any new header declaration.
|
|
302
|
+
|
|
303
|
+
Only calls that can wait for the inferior, debugger server, or command script
|
|
304
|
+
release Ruby's GVL. The wrapper does not invoke Ruby callbacks from those
|
|
305
|
+
calls; adding callback APIs requires revisiting this policy.
|
|
306
|
+
|
|
223
307
|
To run tests, you need to compile the test fixtures:
|
|
224
308
|
|
|
225
309
|
```bash
|
data/Rakefile
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
require 'bundler/gem_tasks'
|
|
4
4
|
require 'rspec/core/rake_task'
|
|
5
|
+
require 'shellwords'
|
|
6
|
+
require 'tmpdir'
|
|
5
7
|
|
|
6
8
|
RSpec::Core::RakeTask.new(:spec)
|
|
7
9
|
|
|
@@ -47,6 +49,7 @@ task :clean do
|
|
|
47
49
|
Dir.chdir(ext_dir) do
|
|
48
50
|
system('make clean') if File.exist?('Makefile')
|
|
49
51
|
FileUtils.rm_f('Makefile')
|
|
52
|
+
FileUtils.rm_f('lldb_wrapper_config.h')
|
|
50
53
|
end
|
|
51
54
|
|
|
52
55
|
FileUtils.rm_f(File.join(lib_dir, 'liblldb_wrapper.dylib'))
|
|
@@ -74,6 +77,39 @@ namespace :steep do
|
|
|
74
77
|
end
|
|
75
78
|
end
|
|
76
79
|
|
|
80
|
+
namespace :bindings do
|
|
81
|
+
desc 'Check native, FFI, RBS, and surface-ledger parity'
|
|
82
|
+
task check: :compile do
|
|
83
|
+
sh 'ruby script/check_bindings'
|
|
84
|
+
end
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
namespace :rbs do
|
|
88
|
+
desc 'Verify that generated RBS output is deterministic'
|
|
89
|
+
task :verify do
|
|
90
|
+
Dir.mktmpdir('lldb-ruby-rbs') do |directory|
|
|
91
|
+
outputs = %w[first second].map { |name| File.join(directory, name) }
|
|
92
|
+
outputs.each do |output|
|
|
93
|
+
sh "bundle exec rbs-inline --output=#{Shellwords.escape(output)} lib"
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
files = lambda do |root|
|
|
97
|
+
Dir.glob(File.join(root, '**/*.rbs')).map do |path|
|
|
98
|
+
path.delete_prefix("#{root}#{File::SEPARATOR}")
|
|
99
|
+
end.sort
|
|
100
|
+
end
|
|
101
|
+
first_files, second_files = outputs.map { |output| files.call(output) }
|
|
102
|
+
abort 'RBS output file set is not reproducible' unless first_files == second_files
|
|
103
|
+
|
|
104
|
+
first_files.each do |relative|
|
|
105
|
+
first = File.binread(File.join(outputs[0], relative))
|
|
106
|
+
second = File.binread(File.join(outputs[1], relative))
|
|
107
|
+
abort "RBS output is not reproducible: #{relative}" unless first == second
|
|
108
|
+
end
|
|
109
|
+
end
|
|
110
|
+
end
|
|
111
|
+
end
|
|
112
|
+
|
|
77
113
|
desc 'Run steep type check'
|
|
78
114
|
task steep: ['steep:check']
|
|
79
115
|
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
version: 1
|
|
2
|
+
|
|
3
|
+
constants:
|
|
4
|
+
- ruby: INVALID_ADDRESS
|
|
5
|
+
native: LLDB_INVALID_ADDRESS
|
|
6
|
+
- ruby: INVALID_PROCESS_ID
|
|
7
|
+
native: LLDB_INVALID_PROCESS_ID
|
|
8
|
+
- ruby: INVALID_THREAD_ID
|
|
9
|
+
native: LLDB_INVALID_THREAD_ID
|
|
10
|
+
- ruby: INVALID_BREAK_ID
|
|
11
|
+
native: LLDB_INVALID_BREAK_ID
|
|
12
|
+
- ruby: INVALID_LINE_NUMBER
|
|
13
|
+
native: LLDB_INVALID_LINE_NUMBER
|
|
14
|
+
- ruby: State::INVALID
|
|
15
|
+
native: lldb::eStateInvalid
|
|
16
|
+
- ruby: State::UNLOADED
|
|
17
|
+
native: lldb::eStateUnloaded
|
|
18
|
+
- ruby: State::CONNECTED
|
|
19
|
+
native: lldb::eStateConnected
|
|
20
|
+
- ruby: State::ATTACHING
|
|
21
|
+
native: lldb::eStateAttaching
|
|
22
|
+
- ruby: State::LAUNCHING
|
|
23
|
+
native: lldb::eStateLaunching
|
|
24
|
+
- ruby: State::STOPPED
|
|
25
|
+
native: lldb::eStateStopped
|
|
26
|
+
- ruby: State::RUNNING
|
|
27
|
+
native: lldb::eStateRunning
|
|
28
|
+
- ruby: State::STEPPING
|
|
29
|
+
native: lldb::eStateStepping
|
|
30
|
+
- ruby: State::CRASHED
|
|
31
|
+
native: lldb::eStateCrashed
|
|
32
|
+
- ruby: State::DETACHED
|
|
33
|
+
native: lldb::eStateDetached
|
|
34
|
+
- ruby: State::EXITED
|
|
35
|
+
native: lldb::eStateExited
|
|
36
|
+
- ruby: State::SUSPENDED
|
|
37
|
+
native: lldb::eStateSuspended
|
|
38
|
+
- ruby: StopReason::INVALID
|
|
39
|
+
native: lldb::eStopReasonInvalid
|
|
40
|
+
- ruby: StopReason::NONE
|
|
41
|
+
native: lldb::eStopReasonNone
|
|
42
|
+
- ruby: StopReason::TRACE
|
|
43
|
+
native: lldb::eStopReasonTrace
|
|
44
|
+
- ruby: StopReason::BREAKPOINT
|
|
45
|
+
native: lldb::eStopReasonBreakpoint
|
|
46
|
+
- ruby: StopReason::WATCHPOINT
|
|
47
|
+
native: lldb::eStopReasonWatchpoint
|
|
48
|
+
- ruby: StopReason::SIGNAL
|
|
49
|
+
native: lldb::eStopReasonSignal
|
|
50
|
+
- ruby: StopReason::EXCEPTION
|
|
51
|
+
native: lldb::eStopReasonException
|
|
52
|
+
- ruby: StopReason::EXEC
|
|
53
|
+
native: lldb::eStopReasonExec
|
|
54
|
+
- ruby: StopReason::PLAN_COMPLETE
|
|
55
|
+
native: lldb::eStopReasonPlanComplete
|
|
56
|
+
- ruby: StopReason::THREAD_EXITING
|
|
57
|
+
native: lldb::eStopReasonThreadExiting
|
|
58
|
+
- ruby: StopReason::INSTRUMENTATION
|
|
59
|
+
native: lldb::eStopReasonInstrumentation
|
|
60
|
+
- ruby: StopReason::PROCESSOR_TRACE
|
|
61
|
+
native: lldb::eStopReasonProcessorTrace
|
|
62
|
+
- ruby: StopReason::FORK
|
|
63
|
+
native: lldb::eStopReasonFork
|
|
64
|
+
- ruby: StopReason::VFORK
|
|
65
|
+
native: lldb::eStopReasonVFork
|
|
66
|
+
- ruby: StopReason::VFORK_DONE
|
|
67
|
+
native: lldb::eStopReasonVForkDone
|
|
68
|
+
- ruby: SymbolContextItem::TARGET
|
|
69
|
+
native: lldb::eSymbolContextTarget
|
|
70
|
+
- ruby: SymbolContextItem::MODULE
|
|
71
|
+
native: lldb::eSymbolContextModule
|
|
72
|
+
- ruby: SymbolContextItem::COMPILE_UNIT
|
|
73
|
+
native: lldb::eSymbolContextCompUnit
|
|
74
|
+
- ruby: SymbolContextItem::FUNCTION
|
|
75
|
+
native: lldb::eSymbolContextFunction
|
|
76
|
+
- ruby: SymbolContextItem::BLOCK
|
|
77
|
+
native: lldb::eSymbolContextBlock
|
|
78
|
+
- ruby: SymbolContextItem::LINE_ENTRY
|
|
79
|
+
native: lldb::eSymbolContextLineEntry
|
|
80
|
+
- ruby: SymbolContextItem::SYMBOL
|
|
81
|
+
native: lldb::eSymbolContextSymbol
|
|
82
|
+
- ruby: SymbolContextItem::EVERYTHING
|
|
83
|
+
native: lldb::eSymbolContextEverything
|
|
84
|
+
- ruby: SymbolContextItem::VARIABLE
|
|
85
|
+
native: lldb::eSymbolContextVariable
|
|
86
|
+
- ruby: ValueType::INVALID
|
|
87
|
+
native: lldb::eValueTypeInvalid
|
|
88
|
+
- ruby: ValueType::VARIABLE_GLOBAL
|
|
89
|
+
native: lldb::eValueTypeVariableGlobal
|
|
90
|
+
- ruby: ValueType::VARIABLE_STATIC
|
|
91
|
+
native: lldb::eValueTypeVariableStatic
|
|
92
|
+
- ruby: ValueType::VARIABLE_ARGUMENT
|
|
93
|
+
native: lldb::eValueTypeVariableArgument
|
|
94
|
+
- ruby: ValueType::VARIABLE_LOCAL
|
|
95
|
+
native: lldb::eValueTypeVariableLocal
|
|
96
|
+
- ruby: ValueType::REGISTER
|
|
97
|
+
native: lldb::eValueTypeRegister
|
|
98
|
+
- ruby: ValueType::REGISTER_SET
|
|
99
|
+
native: lldb::eValueTypeRegisterSet
|
|
100
|
+
- ruby: ValueType::CONSTANT_RESULT
|
|
101
|
+
native: lldb::eValueTypeConstResult
|
|
102
|
+
- ruby: ValueType::VARIABLE_THREAD_LOCAL
|
|
103
|
+
native: lldb::eValueTypeVariableThreadLocal
|
|
104
|
+
- ruby: ErrorType::INVALID
|
|
105
|
+
native: lldb::eErrorTypeInvalid
|
|
106
|
+
- ruby: ErrorType::GENERIC
|
|
107
|
+
native: lldb::eErrorTypeGeneric
|
|
108
|
+
- ruby: ErrorType::MACH_KERNEL
|
|
109
|
+
native: lldb::eErrorTypeMachKernel
|
|
110
|
+
- ruby: ErrorType::POSIX
|
|
111
|
+
native: lldb::eErrorTypePOSIX
|
|
112
|
+
- ruby: ErrorType::EXPRESSION
|
|
113
|
+
native: lldb::eErrorTypeExpression
|
|
114
|
+
- ruby: ErrorType::WIN32
|
|
115
|
+
native: lldb::eErrorTypeWin32
|
|
116
|
+
- ruby: ReturnStatus::INVALID
|
|
117
|
+
native: lldb::eReturnStatusInvalid
|
|
118
|
+
- ruby: ReturnStatus::SUCCESS_FINISH_NO_RESULT
|
|
119
|
+
native: lldb::eReturnStatusSuccessFinishNoResult
|
|
120
|
+
- ruby: ReturnStatus::SUCCESS_FINISH_RESULT
|
|
121
|
+
native: lldb::eReturnStatusSuccessFinishResult
|
|
122
|
+
- ruby: ReturnStatus::SUCCESS_CONTINUING_NO_RESULT
|
|
123
|
+
native: lldb::eReturnStatusSuccessContinuingNoResult
|
|
124
|
+
- ruby: ReturnStatus::SUCCESS_CONTINUING_RESULT
|
|
125
|
+
native: lldb::eReturnStatusSuccessContinuingResult
|
|
126
|
+
- ruby: ReturnStatus::STARTED
|
|
127
|
+
native: lldb::eReturnStatusStarted
|
|
128
|
+
- ruby: ReturnStatus::FAILED
|
|
129
|
+
native: lldb::eReturnStatusFailed
|
|
130
|
+
- ruby: ReturnStatus::QUIT
|
|
131
|
+
native: lldb::eReturnStatusQuit
|
|
132
|
+
- ruby: RunMode::ONLY_THIS_THREAD
|
|
133
|
+
native: lldb::eOnlyThisThread
|
|
134
|
+
- ruby: RunMode::ALL_THREADS
|
|
135
|
+
native: lldb::eAllThreads
|
|
136
|
+
- ruby: RunMode::ONLY_DURING_STEPPING
|
|
137
|
+
native: lldb::eOnlyDuringStepping
|