[m-dev.] for review: document mdb procedure specifiers

Fergus Henderson fjh at cs.mu.OZ.AU
Tue May 16 07:30:45 AEST 2000


This is in response to a bug report from Warwick.

----------

Estimated hours taken: 0.5

doc/user_guide.texi:
	Document the syntax of procedure specifiers for mdb's
	`break' command.

Workspace: /home/pgrad/fjh/ws/hg
Index: doc/user_guide.texi
===================================================================
RCS file: /home/mercury1/repository/mercury/doc/user_guide.texi,v
retrieving revision 1.206
diff -u -d -r1.206 user_guide.texi
--- doc/user_guide.texi	2000/05/11 03:46:29	1.206
+++ doc/user_guide.texi	2000/05/15 21:05:40
@@ -2089,9 +2089,28 @@
 specify the action to be taken at the break point.
 @sp 1
 By default, the initial state of the break point is @samp{stop}.
- at item break [-PSaei] @var{proc-spec}
- at c <module name> <predicate name> [<arity> [<mode> [<predfunc>]]]
+ at item break [-PSaei] @var{procedure}
 Puts a break point on the specified procedure.
+ at sp 1
+The procedure specifier @var{procedure} should be of the form
+ at code{[pred*|func*][@var{module}:]@var{name}[/@var{arity}][- at var{mode}]},
+where @code{[@dots{}]} denotes optional componets, @code{@dots{}|@dots{}}
+denotes alternatives, and the remaining symbols (@code{* : / -})
+just stand for themselves.
+ at sp 1
+That is, the procedure specifier can optionally indicate whether
+the procedure is a predicate (@samp{pred}) or a function (@samp{func}),
+followed by @samp{*};
+the procedure's module name, followed by @samp{:};
+the procedure name;
+the arity (number of arguments), preceded by @samp{/};
+and the mode number, preceded by @samp{-}.
+Any of these except for the procedure name can be omitted.
+ at sp 1
+For example, valid break commands include
+ at samp{break append}, @samp{break list:append},
+ at samp{break append/3}, @samp{break list:append/3-0},
+and @samp{break pred*list:append/3-0}.
 @sp 1
 The options @samp{-P} or @samp{--print}, and @samp{-S} or @samp{--stop}
 specify the action to be taken at the break point,

----------

Here's what the `info' version looks like:

 | `break [-PSaei] PROCEDURE'
 |      Puts a break point on the specified procedure.
 | 
 |      The procedure specifier PROCEDURE should be of the form
 |      `[pred*|func*][MODULE:]NAME[/ARITY][-MODE]', where `[...]' denotes
 |      optional componets, `...|...'  denotes alternatives, and the
 |      remaining symbols (`* : / -') just stand for themselves.
 | 
 |      That is, the procedure specifier can optionally indicate whether
 |      the procedure is a predicate (`pred') or a function (`func'),
 |      followed by `*'; the procedure's module name, followed by `:'; the
 |      procedure name; the arity (number of arguments), preceded by `/';
 |      and the mode number, preceded by `-'.  Any of these except for the
 |      procedure name can be omitted.
 | 
 |      For example, valid break commands include `break append', `break
 |      list:append', `break append/3', `break list:append/3-0', and
 |      `break pred*list:append/3-0'.
 | 
 |      The options `-P' or `--print', and `-S' or `--stop' specify the
 |      action to be taken at the break point, while the options `-a' or
 |      `--all', `-e' or `--entry', and `-i' or `--interface' specify the
 |      invocation conditions of the break point.
 | 
 |      By default, the action of the break point is `stop', and its
 |      invocation condition is `interface'.

-- 
Fergus Henderson <fjh at cs.mu.oz.au>  |  "I have always known that the pursuit
WWW: <http://www.cs.mu.oz.au/~fjh>  |  of excellence is a lethal habit"
PGP: finger fjh at 128.250.37.3        |     -- the last words of T. S. Garp.
--------------------------------------------------------------------------
mercury-developers mailing list
Post messages to:       mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions:          mercury-developers-request at cs.mu.oz.au
--------------------------------------------------------------------------



More information about the developers mailing list