* gdbmi.texinfo (GDB/MI Output Syntax): Add tuples and lists to
authorAndrew Cagney <cagney@redhat.com>
Sat, 16 Jun 2001 18:57:56 +0000 (18:57 +0000)
committerAndrew Cagney <cagney@redhat.com>
Sat, 16 Jun 2001 18:57:56 +0000 (18:57 +0000)
syntax.
(GDB/MI Draft Changes to Output Syntax): Delete section.

gdb/mi/ChangeLog
gdb/mi/gdbmi.texinfo

index 55ce6a1b545201fd5b6f00bde4e225c442c69ccf..6c1eb42fa862d02ca5fc31cc781fe5dadab8bca2 100644 (file)
@@ -1,3 +1,9 @@
+2001-06-07  Andrew Cagney  <ac131313@redhat.com>
+
+       * gdbmi.texinfo (GDB/MI Output Syntax): Add tuples and lists to
+       syntax.
+       (GDB/MI Draft Changes to Output Syntax): Delete section.
+       
 Mon Jun 11 17:22:25 2001  Andrew Cagney  <cagney@b1.cygnus.com>
 
        * mi-out.c: Fix typo. s/supress/suppress/.
index 985ac71446ab4d3c2c873b462b5d0fb4fc332a9f..e07b08929a58127d3c1b3ebc08dfa648c79f26c3 100644 (file)
@@ -117,7 +117,6 @@ Elena Zannoni.
 * GDB/MI Thread Commands::
 * GDB/MI Tracepoint Commands::
 * GDB/MI Variable Objects::
-* GDB/MI Draft Changes to Output Syntax::
 @end menu
 
 @c When these are implemented, they should be moved to be between Misc and
@@ -257,14 +256,24 @@ corresponding output for that command will also be prefixed by that same
 depending on the needs---this is still in development).
 
 @item @var{result} @expansion{}
-@code{[ @var{string} "=" ] @var{value}}
+@code{ @var{variable} "=" @var{value}}
+
+@item @var{variable} @expansion{}
+@code{ @var{string} }
 
 @item @var{value} @expansion{}
-@code{@var{const} | "@{" @var{result} ( "," @var{result} )* "@}"}
+@code{ @var{const} | @var{tuple} | @var{list} }
 
 @item @var{const} @expansion{}
 @code{@var{c-string}}
 
+@item @var{tuple} @expansion{}
+@code{ "@{@}" | "@{" @var{result} ( "," @var{result} )* "@}" }
+
+@item @var{list} @expansion{}
+@code{ "[]" | "[" @var{value} ( "," @var{value} )* "]" | "["
+@var{result} ( "," @var{result} )* "]" }
+
 @item @var{stream-record} @expansion{}
 @code{@var{console-stream-output} | @var{target-stream-output} | @var{log-stream-output}}
 
@@ -339,14 +348,18 @@ All the target output is prefixed by @samp{@@}.
 @var{log-stream-output} is output text coming from @value{GDBN}'s internals, for
 instance messages that should be displayed as part of an error log.  All
 the log output is prefixed by @samp{&}.
+
+@item
+@cindex list output in @sc{gdb/mi}
+New @sc{gdb/mi} commands should only output @var{lists} containing
+@var{values}.
+
+
 @end itemize
 
 @xref{GDB/MI Stream Records, , @sc{gdb/mi} Stream Records}, for more
 details about the various output records.
 
-@xref{GDB/MI Draft Changes to Output Syntax, , @sc{gdb/mi} Draft Changes
-to Output Syntax}, for proposed revisions to the current output syntax.
-
 @node GDB/MI Simple Examples
 @subsection Simple Examples of @sc{gdb/mi} Interaction
 @cindex @sc{gdb/mi}, simple examples
@@ -3742,164 +3755,6 @@ Update the value of the variable object @var{name} by evaluating its
 expression after fetching all the new values from memory or registers.
 A @samp{*} causes all existing variable objects to be updated.
 
-@c %%%%%%%%%%%%%%%%%%%%%%%%%%%% SECTION %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-@node GDB/MI Draft Changes to Output Syntax
-@section  @sc{gdb/mi} Draft Changes to Output Syntax
-
-@cindex draft changes to output syntax of @sc{gdb/mi}
-@cindex @sc{gdb/mi}, draft changes to output syntax
-
-One problem identified in the existing @sc{gdb/mi} output syntax was the
-difficulty in differentiating between a tuple such as:
-
-@example
-@{number="1",type="breakpoint",disp="keep",enabled="y"@}
-@end example
-
-where each value has a unique label, and a list such as:
-
-@example
-@{"1","2","4"@}
-@{bp="1",bp="2",bp="4"@}
-@end example
-
-where values are un-labeled or the label is duplicated.
-
-What follows is a draft revision to the output specification that
-addresses this problem.
-
-The output from @sc{gdb/mi} consists of zero or more out-of-band records
-optionally followed by a single result record, the result record being
-for the most recent command input.  The sequence is terminated by
-@samp{(@value{GDBP})}.
-
-Asynchronous @sc{gdb/mi} output is similar.
-
-Each output record directly associated with an input command is prefixed
-by the input command's @code{@var{token}}.
-
-@table @code
-@item @var{output} @expansion{}
-@{ @var{out-of-band-record} @} @code{[} @var{result-record} @code{]} "@code{(@value{GDBP})}" @var{nl}
-
-@item @var{result-record} @expansion{}
-@code{[} @var{token} @code{]} "^" @var{result-class} @{ "," @var{result} @} @var{nl}
-
-@item @var{out-of-band-record} @expansion{}
-@var{async-record} @code{|} @var{stream-record}
-
-@item @var{async-record} @expansion{}
-@var{exec-async-output} @code{|} @var{status-async-output} @code{|} @var{notify-async-output}
-
-@item @var{exec-async-output} @expansion{}
-@code{[} @var{token} @code{]} "*" @var{async-output}
-
-@item @var{status-async-output} @expansion{}
-@code{[} @var{token} @code{]} "+" @var{async-output}
-
-@item @var{notify-async-output} @expansion{}
-@code{[} @var{token} @code{]} "=" @var{async-output}
-
-@item @var{async-output} @expansion{}
-@var{async-class} @{ "," @var{result} @} @var{nl}
-
-@item @var{result-class} @expansion{}
-"done" @code{|} "running" @code{|} "connected" @code{|} "error" @code{|} "exit"
-
-@item @var{async-class} @expansion{}
-"stopped" @code{|} @emph{others depending on need as still in development}
-
-@item @var{result} @expansion{}
-@var{string} "=" @var{value}
-
-@item @var{value} @expansion{}
-@var{c-string} @code{|} @var{tupple} @code{|} @var{list}
-
-@item @var{tupple} @expansion{}
-"@{@}" @code{|} "@{" @var{result} @{ "," @var{result} @} "@}"
-
-@item @var{list} @expansion{}
-"@code{[]}" @code{|} "@code{[}" @var{value} @{ "," @var{value} @} "@code{]}"
-
-@item @var{string} @expansion{}
-@emph{[-A-Za-z\.0-9_]*}
-
-@item @var{c-string} @expansion{}
-@emph{See the input specification}
-
-@item @var{stream-record} @expansion{}
-@var{console-stream-output} @code{|} @var{target-stream-output} @code{|} @var{log-stream-output}
-
-@item @var{console-stream-output} @expansion{}
-"~" @var{c-string}
-
-@item @var{target-stream-output} @expansion{}
-"@@" @var{c-string}
-
-@item @var{log-stream-output} @expansion{}
-"&" @var{c-string}
-
-@item @var{nl} @expansion{}
-CR @code{|} CR-LF
-
-@item @var{token} @expansion{}
-"any sequence of digits"
-
-@end table
-
-In addition, the following are still being developed.
-
-@table @code
-
-@item @var{query}
-This action is currently undefined.
-
-@end table
-
-Notes:
-
-@itemize @bullet
-
-@item
-All output sequences end in a single line containing a period.
-
-@item
-The @code{@var{token}} is from the corresponding request.  If an execution
-command is interrupted by the @code{-exec-interrupt} command, the token
-associated with the `*stopped' message is the one of the original
-execution command, not the one of the interrupt command.
-
-@item
-@var{status-async-output} contains on-going status information about the
-progress of a slow operation.  It can be discarded.  All status output is
-prefixed by the prefix @samp{+}.
-
-@item
-@var{exec-async-output} contains asynchronous state change on the target
-(stopped, started, disappeared).  All async output is prefixed by
-the prefix @samp{*}.
-
-@item
-@var{notify-async-output} contains supplementary information that the
-client should handle (new breakpoint information).  All notify output is
-prefixed by the prefix @samp{=}.
-
-@item
-@var{console-stream-output} is output that should be displayed as is, in the
-console.  It is the textual response to a CLI command.  All the console
-output is prefixed by the prefix @samp{~}.
-
-@item
-@var{target-stream-output} is the output produced by the target program.
-All the target output is prefixed by the prefix @samp{@@}.
-
-@item
-@var{log-stream-output} is output text coming from @value{GDBN}'s
-internals, for instance messages that should be displayed as part of an
-error log.  All the log output is prefixed by the prefix @samp{&}.
-
-@end itemize
-
 @c Local variables:
 @c change-log-default-name: "ChangeLog-mi"
 @c End: