-\f
-;; ======================================================================
-;;
-;; In this world, there are gdb variables (of unspecified
-;; representation) and buffers associated with those objects.
-;; The list of variables is built up by the expansions of
-;; def-gdb-variable
-
-(defmacro def-gdb-var (root-symbol &optional default doc)
- (let* ((root (symbol-name root-symbol))
- (accessor (intern (concat "gdb-get-" root)))
- (setter (intern (concat "gdb-set-" root)))
- (name (intern (concat "gdb-" root))))
- `(progn
- (defvar ,name ,default ,doc)
- (if (not (memq ',name gdb-variables))
- (push ',name gdb-variables))
- (defun ,accessor ()
- (buffer-local-value ',name gud-comint-buffer))
- (defun ,setter (val)
- (with-current-buffer gud-comint-buffer
- (setq ,name val))))))
-
-(def-gdb-var buffer-type nil
- "One of the symbols bound in `gdb-buffer-rules'.")
-
-(def-gdb-var burst ""
- "A string of characters from gdb that have not yet been processed.")
-
-(def-gdb-var input-queue ()
- "A list of gdb command objects.")
-
-(def-gdb-var prompting nil
- "True when gdb is idle with no pending input.")
-
-(def-gdb-var output-sink 'user
- "The disposition of the output of the current gdb command.
-Possible values are these symbols:
-
- user -- gdb output should be copied to the GUD buffer
- for the user to see.
-
- inferior -- gdb output should be copied to the inferior-io buffer
-
- pre-emacs -- output should be ignored util the post-prompt
- annotation is received. Then the output-sink
- becomes:...
- emacs -- output should be collected in the partial-output-buffer
- for subsequent processing by a command. This is the
- disposition of output generated by commands that
- gdb mode sends to gdb on its own behalf.
- post-emacs -- ignore output until the prompt annotation is
- received, then go to USER disposition.
-")
-
-(def-gdb-var current-item nil
- "The most recent command item sent to gdb.")
-
-(def-gdb-var pending-triggers '()
- "A list of trigger functions that have run later than their output
-handlers.")
-
-;; end of gdb variables
-