Add parameter support for Guile.
[deliverable/binutils-gdb.git] / gdb / guile / lib / gdb.scm
1 ;; Scheme side of the gdb module.
2 ;;
3 ;; Copyright (C) 2014 Free Software Foundation, Inc.
4 ;;
5 ;; This file is part of GDB.
6 ;;
7 ;; This program is free software; you can redistribute it and/or modify
8 ;; it under the terms of the GNU General Public License as published by
9 ;; the Free Software Foundation; either version 3 of the License, or
10 ;; (at your option) any later version.
11 ;;
12 ;; This program is distributed in the hope that it will be useful,
13 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
14 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 ;; GNU General Public License for more details.
16 ;;
17 ;; You should have received a copy of the GNU General Public License
18 ;; along with this program. If not, see <http://www.gnu.org/licenses/>.
19
20 ;; This file is loaded with scm_c_primitive_load, which is ok, but files
21 ;; loaded with it are not compiled. So we do very little here, and do
22 ;; most of the initialization in init.scm.
23
24 (define-module (gdb)
25 ;; The version of the (gdb) module as (major minor).
26 ;; Incompatible changes bump the major version.
27 ;; Other changes bump the minor version.
28 ;; It's not clear whether we need a patch-level as well, but this can
29 ;; be added later if necessary.
30 ;; This is not the GDB version on purpose. This version tracks the Scheme
31 ;; gdb module version.
32 ;; TODO: Change to (1 0) when ready.
33 #:version (0 1))
34
35 ;; Export the bits provided by the C side.
36 ;; This is so that the compiler can see the exports when
37 ;; other code uses this module.
38 ;; TODO: Generating this list would be nice, but it would require an addition
39 ;; to the GDB build system. Still, I think it's worth it.
40
41 (export
42
43 ;; guile.c
44
45 execute
46 data-directory
47 gdb-version
48 host-config
49 target-config
50
51 ;; scm-arch.c
52
53 arch?
54 current-arch
55 arch-name
56 arch-charset
57 arch-wide-charset
58
59 arch-void-type
60 arch-char-type
61 arch-short-type
62 arch-int-type
63 arch-long-type
64
65 arch-schar-type
66 arch-uchar-type
67 arch-ushort-type
68 arch-uint-type
69 arch-ulong-type
70 arch-float-type
71 arch-double-type
72 arch-longdouble-type
73 arch-bool-type
74 arch-longlong-type
75 arch-ulonglong-type
76
77 arch-int8-type
78 arch-uint8-type
79 arch-int16-type
80 arch-uint16-type
81 arch-int32-type
82 arch-uint32-type
83 arch-int64-type
84 arch-uint64-type
85
86 ;; scm-block.c
87
88 block?
89 block-valid?
90 block-start
91 block-end
92 block-function
93 block-superblock
94 block-global-block
95 block-static-block
96 block-global?
97 block-static?
98 block-symbols
99 make-block-symbols-iterator
100 block-symbols-progress?
101 lookup-block
102
103 ;; scm-breakpoint.c
104
105 BP_NONE
106 BP_BREAKPOINT
107 BP_WATCHPOINT
108 BP_HARDWARE_WATCHPOINT
109 BP_READ_WATCHPOINT
110 BP_ACCESS_WATCHPOINT
111
112 WP_READ
113 WP_WRITE
114 WP_ACCESS
115
116 make-breakpoint
117 breakpoint-delete!
118 breakpoints
119 breakpoint?
120 breakpoint-valid?
121 breakpoint-number
122 breakpoint-type
123 brekapoint-visible?
124 breakpoint-location
125 breakpoint-expression
126 breakpoint-enabled?
127 set-breakpoint-enabled!
128 breakpoint-silent?
129 set-breakpoint-silent!
130 breakpoint-ignore-count
131 set-breakpoint-ignore-count!
132 breakpoint-hit-count
133 set-breakpoint-hit-count!
134 breakpoint-thread
135 set-breakpoint-thread!
136 breakpoint-task
137 set-breakpoint-task!
138 breakpoint-condition
139 set-breakpoint-condition!
140 breakpoint-stop
141 set-breakpoint-stop!
142 breakpoint-commands
143
144 ;; scm-cmd.c
145
146 make-command
147 register-command!
148 command?
149 command-valid?
150 dont-repeat
151
152 COMPLETE_NONE
153 COMPLETE_FILENAME
154 COMPLETE_LOCATION
155 COMPLETE_COMMAND
156 COMPLETE_SYMBOL
157 COMPLETE_EXPRESSION
158
159 COMMAND_NONE
160 COMMAND_RUNNING
161 COMMAND_DATA
162 COMMAND_STACK
163 COMMAND_FILES
164 COMMAND_SUPPORT
165 COMMAND_STATUS
166 COMMAND_BREAKPOINTS
167 COMMAND_TRACEPOINTS
168 COMMAND_OBSCURE
169 COMMAND_MAINTENANCE
170 COMMAND_USER
171
172 ;; scm-disasm.c
173
174 arch-disassemble
175
176 ;; scm-exception.c
177
178 make-exception
179 exception?
180 exception-key
181 exception-args
182
183 ;; scm-frame.c
184
185 NORMAL_FRAME
186 DUMMY_FRAME
187 INLINE_FRAME
188 TAILCALL_FRAME
189 SIGTRAMP_FRAME
190 ARCH_FRAME
191 SENTINEL_FRAME
192
193 FRAME_UNWIND_NO_REASON
194 FRAME_UNWIND_NULL_ID
195 FRAME_UNWIND_OUTERMOST
196 FRAME_UNWIND_UNAVAILABLE
197 FRAME_UNWIND_INNER_ID
198 FRAME_UNWIND_SAME_ID
199 FRAME_UNWIND_NO_SAVED_PC
200 FRAME_UNWIND_MEMORY_ERROR
201
202 frame?
203 frame-valid?
204 frame-name
205 frame-type
206 frame-arch
207 frame-unwind-stop-reason
208 frame-pc
209 frame-block
210 frame-function
211 frame-older
212 frame-newer
213 frame-sal
214 frame-read-var
215 frame-select
216 newest-frame
217 selected-frame
218 unwind-stop-reason-string
219
220 ;; scm-iterator.c
221
222 make-iterator
223 iterator?
224 iterator-object
225 iterator-progress
226 set-iterator-progress!
227 iterator-next!
228 end-of-iteration
229 end-of-iteration?
230
231 ;; scm-lazy-string.c
232 ;; FIXME: Where's the constructor?
233
234 lazy-string?
235 lazy-string-address
236 lazy-string-length
237 lazy-string-encoding
238 lazy-string-type
239 lazy-string->value
240
241 ;; scm-math.c
242
243 valid-add
244 value-sub
245 value-mul
246 value-div
247 value-rem
248 value-mod
249 value-pow
250 value-not
251 value-neg
252 value-pos
253 value-abs
254 value-lsh
255 value-rsh
256 value-min
257 value-max
258 value-lognot
259 value-logand
260 value-logior
261 value-logxor
262 value=?
263 value<?
264 value<=?
265 value>?
266 value>=?
267
268 ;; scm-objfile.c
269
270 objfile?
271 objfile-valid?
272 objfile-filename
273 objfile-pretty-printers
274 set-objfile-pretty-printers!
275 current-objfile
276 objfiles
277
278 ;; scm-param.c
279
280 PARAM_BOOLEAN
281 PARAM_AUTO_BOOLEAN
282 PARAM_ZINTEGER
283 PARAM_UINTEGER
284 PARAM_ZUINTEGER
285 PARAM_ZUINTEGER_UNLIMITED
286 PARAM_STRING
287 PARAM_STRING_NOESCAPE
288 PARAM_OPTIONAL_FILENAME
289 PARAM_FILENAME
290 PARAM_ENUM
291
292 make-parameter
293 register-parameter!
294 parameter?
295 parameter-value
296 set-parameter-value!
297
298 ;; scm-ports.c
299
300 input-port
301 output-port
302 error-port
303 stdio-port?
304 open-memory
305 memory-port?
306 memory-port-range
307 memory-port-read-buffer-size
308 set-memory-port-read-buffer-size!
309 memory-port-write-buffer-size
310 set-memory-port-write-buffer-size!
311 ;; with-gdb-output-to-port, with-gdb-error-to-port are in experimental.scm.
312
313 ;; scm-pretty-print.c
314
315 make-pretty-printer
316 pretty-printer?
317 pretty-printer-enabled?
318 set-pretty-printer-enabled!
319 make-pretty-printer-worker
320 pretty-printer-worker?
321
322 ;; scm-progspace.c
323
324 progspace?
325 progspace-valid?
326 progspace-filename
327 progspace-objfiles
328 progspace-pretty-printers
329 set-progspace-pretty-printers!
330 current-progspace
331 progspaces
332
333 ;; scm-gsmob.c
334
335 gdb-object-kind
336
337 ;; scm-string.c
338
339 string->argv
340
341 ;; scm-symbol.c
342
343 SYMBOL_LOC_UNDEF
344 SYMBOL_LOC_CONST
345 SYMBOL_LOC_STATIC
346 SYMBOL_LOC_REGISTER
347 SYMBOL_LOC_ARG
348 SYMBOL_LOC_REF_ARG
349 SYMBOL_LOC_LOCAL
350 SYMBOL_LOC_TYPEDEF
351 SYMBOL_LOC_LABEL
352 SYMBOL_LOC_BLOCK
353 SYMBOL_LOC_CONST_BYTES
354 SYMBOL_LOC_UNRESOLVED
355 SYMBOL_LOC_OPTIMIZED_OUT
356 SYMBOL_LOC_COMPUTED
357 SYMBOL_LOC_REGPARM_ADDR
358
359 SYMBOL_UNDEF_DOMAIN
360 SYMBOL_VAR_DOMAIN
361 SYMBOL_STRUCT_DOMAIN
362 SYMBOL_LABEL_DOMAIN
363 SYMBOL_VARIABLES_DOMAIN
364 SYMBOL_FUNCTIONS_DOMAIN
365 SYMBOL_TYPES_DOMAIN
366
367 symbol?
368 symbol-valid?
369 symbol-type
370 symbol-symtab
371 symbol-line
372 symbol-name
373 symbol-linkage-name
374 symbol-print-name
375 symbol-addr-class
376 symbol-argument?
377 symbol-constant?
378 symbol-function?
379 symbol-variable?
380 symbol-needs-frame?
381 symbol-value
382 lookup-symbol
383 lookup-global-symbol
384
385 ;; scm-symtab.c
386
387 symtab?
388 symtab-valid?
389 symtab-filename
390 symtab-fullname
391 symtab-objfile
392 symtab-global-block
393 symtab-static-block
394 sal?
395 sal-valid?
396 sal-symtab
397 sal-line
398 sal-pc
399 sal-last
400 find-pc-line
401
402 ;; scm-type.c
403
404 TYPE_CODE_BITSTRING
405 TYPE_CODE_PTR
406 TYPE_CODE_ARRAY
407 TYPE_CODE_STRUCT
408 TYPE_CODE_UNION
409 TYPE_CODE_ENUM
410 TYPE_CODE_FLAGS
411 TYPE_CODE_FUNC
412 TYPE_CODE_INT
413 TYPE_CODE_FLT
414 TYPE_CODE_VOID
415 TYPE_CODE_SET
416 TYPE_CODE_RANGE
417 TYPE_CODE_STRING
418 TYPE_CODE_ERROR
419 TYPE_CODE_METHOD
420 TYPE_CODE_METHODPTR
421 TYPE_CODE_MEMBERPTR
422 TYPE_CODE_REF
423 TYPE_CODE_CHAR
424 TYPE_CODE_BOOL
425 TYPE_CODE_COMPLEX
426 TYPE_CODE_TYPEDEF
427 TYPE_CODE_NAMESPACE
428 TYPE_CODE_DECFLOAT
429 TYPE_CODE_INTERNAL_FUNCTION
430
431 type?
432 lookup-type
433 type-code
434 type-fields
435 type-tag
436 type-sizeof
437 type-strip-typedefs
438 type-array
439 type-vector
440 type-pointer
441 type-range
442 type-reference
443 type-target
444 type-const
445 type-volatile
446 type-unqualified
447 type-name
448 type-num-fields
449 type-fields
450 make-field-iterator
451 type-field
452 type-has-field?
453 field?
454 field-name
455 field-type
456 field-enumval
457 field-bitpos
458 field-bitsize
459 field-artificial?
460 field-baseclass?
461
462 ;; scm-value.c
463
464 value?
465 make-value
466 value-optimized-out?
467 value-address
468 value-type
469 value-dynamic-type
470 value-cast
471 value-dynamic-cast
472 value-reinterpret-cast
473 value-dereference
474 value-referenced-value
475 value-field
476 value-subscript
477 value-call
478 value->bool
479 value->integer
480 value->real
481 value->bytevector
482 value->string
483 value->lazy-string
484 value-lazy?
485 make-lazy-value
486 value-fetch-lazy!
487 value-print
488 parse-and-eval
489 history-ref
490 )
491
492 ;; Load the rest of the Scheme side.
493 ;; data-directory is provided by the C code.
494
495 (add-to-load-path
496 (string-append (data-directory) file-name-separator-string "guile"))
497
498 (use-modules ((gdb init)))
499
500 ;; These come from other files, but they're really part of this module.
501
502 (re-export
503
504 ;; init.scm
505 orig-input-port
506 orig-output-port
507 orig-error-port
508 throw-user-error
509 )
This page took 0.039482 seconds and 4 git commands to generate.