From e5ef06aa64ec0082f948f015e109e83bc4bb48f8 Mon Sep 17 00:00:00 2001
From: Martin Nilsson <mani@lysator.liu.se>
Date: Tue, 1 Apr 2003 19:49:01 +0200
Subject: [PATCH] Autodoc fix

Rev: lib/7.0/modules/Calendar.pmod/module.pmod:1.6
Rev: lib/master.pike.in:1.265
Rev: lib/modules/Array.pmod:1.80
Rev: lib/modules/Calendar.pmod/Stardate.pmod:1.12
Rev: lib/modules/Calendar_I.pmod/module.pmod:1.13
Rev: lib/modules/Function.pmod:1.7
Rev: lib/modules/GLU.pmod:1.12
Rev: lib/modules/Geography.pmod/Countries.pmod:1.19
Rev: lib/modules/Languages.pmod/PLIS.pmod:1.16
Rev: lib/modules/MIME.pmod/module.pmod:1.8
Rev: lib/modules/Parser.pmod/RCS.pike:1.30
Rev: lib/modules/Parser.pmod/XML.pmod/Tree.pmod:1.30
Rev: lib/modules/Parser.pmod/module.pmod:1.17
Rev: lib/modules/Protocols.pmod/HTTP.pmod/Query.pike:1.55
Rev: lib/modules/Protocols.pmod/LysKOM.pmod/Request.pmod:1.10
Rev: lib/modules/Protocols.pmod/XMLRPC.pmod/module.pmod:1.21
Rev: lib/modules/Sql.pmod/Sql.pike:1.63
Rev: lib/modules/Stdio.pmod/module.pmod:1.168
---
 lib/7.0/modules/Calendar.pmod/module.pmod     | 20 ++---
 lib/master.pike.in                            | 18 ++---
 lib/modules/Array.pmod                        | 14 ++--
 lib/modules/Calendar.pmod/Stardate.pmod       |  8 +-
 lib/modules/Calendar_I.pmod/module.pmod       | 28 +++----
 lib/modules/Function.pmod                     | 14 ++--
 lib/modules/GLU.pmod                          | 12 ++-
 lib/modules/Geography.pmod/Countries.pmod     |  6 +-
 lib/modules/Languages.pmod/PLIS.pmod          |  8 +-
 lib/modules/MIME.pmod/module.pmod             | 74 +++++++++----------
 lib/modules/Parser.pmod/RCS.pike              | 10 +--
 lib/modules/Parser.pmod/XML.pmod/Tree.pmod    |  4 +-
 lib/modules/Parser.pmod/module.pmod           |  6 +-
 .../Protocols.pmod/HTTP.pmod/Query.pike       | 42 ++++++++---
 .../Protocols.pmod/LysKOM.pmod/Request.pmod   |  4 +-
 .../Protocols.pmod/XMLRPC.pmod/module.pmod    | 20 ++---
 lib/modules/Sql.pmod/Sql.pike                 | 12 ++-
 lib/modules/Stdio.pmod/module.pmod            |  4 +-
 18 files changed, 166 insertions(+), 138 deletions(-)

diff --git a/lib/7.0/modules/Calendar.pmod/module.pmod b/lib/7.0/modules/Calendar.pmod/module.pmod
index ccea7b6158..f638647919 100644
--- a/lib/7.0/modules/Calendar.pmod/module.pmod
+++ b/lib/7.0/modules/Calendar.pmod/module.pmod
@@ -15,12 +15,12 @@ class _TimeUnit
    object this=this_object();
 
    //!	Gives a list of methods to get lesser (shorter) time units.
-   //!	ie, for a month, this gives back @tt{({"day"})@}
-   //!	and the method @tt{day(mixed n)@} gives back that 
-   //!	day object. The method @tt{days()@} gives back a
-   //!	list of possible argument values to the method @tt{day@}.
-   //!	Concurrently, @code{Array.map(o->days(),o->day)@} gives
-   //!	a list of day objects in the object @tt{o@}.
+   //!	ie, for a month, this gives back @expr{({"day"})@}
+   //!	and the method @expr{day(mixed n)@} gives back that 
+   //!	day object. The method @expr{days()@} gives back a
+   //!	list of possible argument values to the method @expr{day@}.
+   //!	Concurrently, @expr{Array.map(o->days(),o->day)@} gives
+   //!	a list of day objects in the object @expr{o@}.
    //!
    //!	
    //!	Ie: @pre{
@@ -38,15 +38,15 @@ class _TimeUnit
    //!	equal to my_obj->xxx(my_obj->xxxs()[-1]).
    //!
    //!	To get all xxxs in the object, do something like
-   //!	@code{Array.map(my_obj->xxxs(),my_obj->xxx)@}.
+   //!	@expr{Array.map(my_obj->xxxs(),my_obj->xxx)@}.
    //!
    //!	xxx(object) may return zero, if there was no correspondning xxx.
    //!
    array(string) lesser() { return ({}); }
 
    //!	Gives a list of methods to get greater (longer) time units 
-   //!	from this object. For a month, this gives back @tt{({"year"})@},
-   //!	thus the method @tt{month->year()@} gives the year object.
+   //!	from this object. For a month, this gives back @expr{({"year"})@},
+   //!	thus the method @expr{month->year()@} gives the year object.
    //!
    array(string) greater() { return ({}); }
 
@@ -61,7 +61,7 @@ class _TimeUnit
    //! @decl object `-(object x)
    //!	@[next()] and @[prev()] give the logical next and previous object.
    //!	The @[`+()] operator gives that logical relative object,
-   //!	ie @code{my_day+14@} gives 14 days ahead.
+   //!	ie @expr{my_day+14@} gives 14 days ahead.
    //!   @[`-()] works the same way, but can also take an object
    //!	of the same type and give the difference as an integer.
 
diff --git a/lib/master.pike.in b/lib/master.pike.in
index 236176b1c3..2b1cbf0d57 100644
--- a/lib/master.pike.in
+++ b/lib/master.pike.in
@@ -6,7 +6,7 @@
 // Pike is distributed under GPL, LGPL and MPL. See the file COPYING
 // for more information.
 //
-// $Id: master.pike.in,v 1.264 2003/03/27 03:32:15 nilsson Exp $
+// $Id: master.pike.in,v 1.265 2003/04/01 17:48:15 nilsson Exp $
 
 #pike __REAL_VERSION__
 
@@ -104,7 +104,7 @@ void resolv_debug (string fmt, mixed... args)
 
 //! @appears error
 //! Throws an error. A more readable version of the code
-//! @tt{throw( ({ sprintf(f, @@args), backtrace() }) )@}.
+//! @expr{throw( ({ sprintf(f, @@args), backtrace() }) )@}.
 void error(string f, mixed ... args) {
   array b = backtrace();
   if (sizeof(args)) f = sprintf(f, @args);
@@ -269,9 +269,9 @@ mapping(string:int) load_time=([]);
 
 //! @appears compile_string
 //! Compile the Pike code in the string @[source] into a program.
-//! If @[filename] is not specified, it will default to @tt{"-"@}.
+//! If @[filename] is not specified, it will default to @expr{"-"@}.
 //!
-//! Functionally equal to @code{@[compile](@[cpp](@[source], @[filename]))@}.
+//! Functionally equal to @expr{@[compile](@[cpp](@[source], @[filename]))@}.
 //!
 //! @seealso
 //! @[compile()], @[cpp()], @[compile_file()]
@@ -394,7 +394,7 @@ mapping(string:array(string)) environment=([]);
 //!
 //! If the @[varname] argument has been given, the value of the environment
 //! variable with the name @[varname] will be returned. If no such
-//! environment variable exists, @tt{0@} (zero) will be returned.
+//! environment variable exists, @expr{0@} (zero) will be returned.
 //!
 //! On NT the environment variable name is case insensitive.
 //!
@@ -413,7 +413,7 @@ string|mapping(string:string) getenv(string|void s)
 //!
 //! This function will compile the file @[filename] to a Pike program that can
 //! later be instantiated. It is the same as doing
-//! @code{@[compile_string](@[Stdio.read_file](@[filename]), @[filename])@}.
+//! @expr{@[compile_string](@[Stdio.read_file](@[filename]), @[filename])@}.
 //!
 //! @seealso
 //! @[compile()], @[compile_string()], @[cpp()]
@@ -504,7 +504,7 @@ string normalize_path( string path )
 //!
 //! @note
 //!   As a special case the current master program is available
-//!   under the name @tt{"/master"@}.
+//!   under the name @expr{"/master"@}.
 mapping(string:program) programs=(["/master":object_program(this_object())]);
 
 array(string) query_precompiled_names(string fname)
@@ -2592,14 +2592,14 @@ static string get_clean_program_path ( program p, string pref1,
 //!
 //! @param ret_obj
 //!   If an instance of @[mod] is found, it will be returned
-//!   by changing element @tt{0@} of @[ret_obj].
+//!   by changing element @expr{0@} of @[ret_obj].
 //!
 //! @returns
 //!   The a description of the path.
 //!
 //! @note
 //!   The returned description will end with a proper indexing method
-//!   currently either @tt{"."@} or @tt{"->"@}.
+//!   currently either @expr{"."@} or @expr{"->"@}.
 string describe_module(object|program mod, array(object)|void ret_obj)
 {
   if (!mod) return "";	// efun or function in gmp(0).
diff --git a/lib/modules/Array.pmod b/lib/modules/Array.pmod
index 9cd2a86c41..921eb1321e 100644
--- a/lib/modules/Array.pmod
+++ b/lib/modules/Array.pmod
@@ -115,8 +115,8 @@ int search_array(array arr, string|function|int fun, mixed ... args)
 }
 
 //! Applies the function @[sum] columnwise on the elements in the
-//! provided arrays. E.g. @tt{sum_array(`+,a,b,c)@} does the same
-//! as @tt{`+(a[*],b[*],c[*])@}.
+//! provided arrays. E.g. @expr{sum_array(`+,a,b,c)@} does the same
+//! as @expr{`+(a[*],b[*],c[*])@}.
 array sum_arrays(function(mixed ...:mixed) sum, array ... args)
 {
   array ret = allocate(sizeof(args[0]));
@@ -128,7 +128,7 @@ array sum_arrays(function(mixed ...:mixed) sum, array ... args)
 //! @decl array sort_array(array arr, function|void cmp, mixed ... args)
 //!
 //! This function sorts the array @[arr] after a compare-function
-//! @[cmp] which takes two arguments and should return @tt{1@} if the
+//! @[cmp] which takes two arguments and should return @expr{1@} if the
 //! first argument is larger then the second. Returns the sorted array
 //! - @[arr] is not sorted destructively.
 //!
@@ -663,11 +663,11 @@ out:if(sizeof(yb) > sizeof(b))
 //! Like @[Array.diff], but tries to generate bigger continuous chunks of the
 //! differences, instead of maximizing the number of difference chunks. More
 //! specifically, @[greedy_diff] optimizes the cases where @[Array.diff] returns
-//! @code{({ ..., A, Z, B, ({}), C, ... })@}
-//! @code{({ ..., A, X, B,  Y+B, C, ... })@}
+//! @expr{({ ..., A, Z, B, ({}), C, ... })@}
+//! @expr{({ ..., A, X, B,  Y+B, C, ... })@}
 //! into the somewhat shorter diff arrays
-//! @code{({ ..., A, Z,     B+C, ... })@}
-//! @code{({ ..., A, X+B+Y, B+C, ... })@}
+//! @expr{({ ..., A, Z,     B+C, ... })@}
+//! @expr{({ ..., A, X+B+Y, B+C, ... })@}
 array(array(array)) greedy_diff(array from, array to)
 {
   array(array) d1, d2;
diff --git a/lib/modules/Calendar.pmod/Stardate.pmod b/lib/modules/Calendar.pmod/Stardate.pmod
index 040559abb2..2bb01fd491 100644
--- a/lib/modules/Calendar.pmod/Stardate.pmod
+++ b/lib/modules/Calendar.pmod/Stardate.pmod
@@ -37,10 +37,10 @@ class cTick
   //!	Since the precision is limited to the float type
   //!	of Pike you can get non-precise results:
   //!
-  //!   @code{
-  //!	> Calendar.Second(Calendar.Stardate.Day(Calendar.Year()));
-  //!	Result: Second(Fri 31 Dec 1999 23:59:18 CET - Sun 31 Dec 2000 23:59:18 CET)
-  //!	@}
+  //! @code
+  //! > Calendar.Second(Calendar.Stardate.Day(Calendar.Year()));
+  //! Result: Second(Fri 31 Dec 1999 23:59:18 CET - Sun 31 Dec 2000 23:59:18 CET)
+  //! @endcode
 
 
    void create(mixed ...args)
diff --git a/lib/modules/Calendar_I.pmod/module.pmod b/lib/modules/Calendar_I.pmod/module.pmod
index 06232a34d0..491f700137 100644
--- a/lib/modules/Calendar_I.pmod/module.pmod
+++ b/lib/modules/Calendar_I.pmod/module.pmod
@@ -11,12 +11,12 @@
 //!    To be forward compatible the lazy way, you can do
 //!    something like this, though:
 //!
-//!   @code{
+//!   @code
 //!   #if constant(Calendar.II)
 //!   #define Calendar Calendar_I
 //!   #endif
 //!   @i{...@} import Calendar @i{or whatever ...@}
-//!   @}
+//!   @endcode
 //!
 //!   This module implements calendar calculations, and base classes
 //!   for time units. 
@@ -29,12 +29,12 @@ class _TimeUnit
    object this=this_object();
 
    //!	Gives a list of methods to get lesser (shorter) time units.
-   //!	ie, for a month, this gives back @code{({"day"})@}
-   //!	and the method @code{day(mixed n)@} gives back that 
-   //!	day object. The method @code{days()@} gives back a
-   //!	list of possible argument values to the method @tt{day@}.
-   //!	Concurrently, @code{Array.map(o->days(),o->day)@} gives
-   //!	a list of day objects in the object @tt{o@}.
+   //!	ie, for a month, this gives back @expr{({"day"})@}
+   //!	and the method @expr{day(mixed n)@} gives back that 
+   //!	day object. The method @expr{days()@} gives back a
+   //!	list of possible argument values to the method @expr{day@}.
+   //!	Concurrently, @expr{Array.map(o->days(),o->day)@} gives
+   //!	a list of day objects in the object @expr{o@}.
    //!
    //!	
    //!	Ie:@pre{
@@ -48,19 +48,19 @@ class _TimeUnit
    //!
    //!	There are two n's with special meaning, 0 and -1.
    //!	0 always gives the first xxx, equal to 
-   //!	@code{my_obj->xxx(my_obj->xxxs()[0])@}, and -1 gives the last,
-   //!	equal to @code{my_obj->xxx(my_obj->xxxs()[-1])@}.
+   //!	@expr{my_obj->xxx(my_obj->xxxs()[0])@}, and -1 gives the last,
+   //!	equal to @expr{my_obj->xxx(my_obj->xxxs()[-1])@}.
    //!
    //!	To get all xxxs in the object, do something like
-   //!	@code{Array.map(my_obj->xxxs(),my_obj->xxx)@}.
+   //!	@expr{Array.map(my_obj->xxxs(),my_obj->xxx)@}.
    //!
    //!	xxx(object) may return zero, if there was no correspondning xxx.
    //!
    array(string) lesser() { return ({}); }
 
    //!	Gives a list of methods to get greater (longer) time units 
-   //!	from this object. For a month, this gives back @code{({"year"})@},
-   //!	thus the method @code{month->year()@} gives the year object.
+   //!	from this object. For a month, this gives back @expr{({"year"})@},
+   //!	thus the method @expr{month->year()@} gives the year object.
    //!
    array(string) greater() { return ({}); }
 
@@ -75,7 +75,7 @@ class _TimeUnit
    //! @decl object `-(object x)
    //!	@[next()] and @[prev()] give the logical next and previous object.
    //!	The @[`+()] operator gives that logical relative object,
-   //!	ie @code{my_day+14@} gives 14 days ahead.
+   //!	ie @expr{my_day+14@} gives 14 days ahead.
    //!     @[`-()] works the same way, but can also take an object
    //!	of the same type and give the difference as an integer.
 
diff --git a/lib/modules/Function.pmod b/lib/modules/Function.pmod
index f7c9c4ab39..4069aa2ac5 100644
--- a/lib/modules/Function.pmod
+++ b/lib/modules/Function.pmod
@@ -2,21 +2,21 @@
 
 constant defined = __builtin.function_defined;
 
-//! Calls the given function with the @tt{args@} array plus the optional
+//! Calls the given function with the @[args] array plus the optional
 //! extra arguments as its arguments and returns the result.
 //!
-//! Most useful in conjunction with @ref{map@}, and particularly in combination
-//! with @ref{sscanf@} with @tt{"...%{...%}..."@} scan strings (which indeed
+//! Most useful in conjunction with @[map], and particularly in combination
+//! with @[sscanf] with @expr{"...%{...%}..."@} scan strings (which indeed
 //! was what it was invented for in the first place).
 //!
 //! @param args
-//!  The first arguments the function @tt{f@} expects
+//!  The first arguments the function @[f] expects.
 //! @param f
-//!  The function to apply the arguments on
+//!  The function to apply the arguments on.
 //! @param extra
-//!  Optional extra arguments to send to @tt{f@}
+//!  Optional extra arguments to send to @[f].
 //! @returns
-//!  Whatever the supplied function @tt{f@} returns
+//!  Whatever the supplied function @[f] returns.
 //!
 //! @example
 //!   @code{
diff --git a/lib/modules/GLU.pmod b/lib/modules/GLU.pmod
index f2517d482e..fe7bd6e451 100644
--- a/lib/modules/GLU.pmod
+++ b/lib/modules/GLU.pmod
@@ -1,5 +1,5 @@
 /*
- * $Id: GLU.pmod,v 1.11 2002/06/28 16:53:12 nilsson Exp $
+ * $Id: GLU.pmod,v 1.12 2003/04/01 17:42:02 nilsson Exp $
  *
  * GL Utilities module.
  */
@@ -39,7 +39,9 @@ import GL;
 //! The matrix generated by gluLookAt postmultiplies the current matrix.
 //!
 //! The relation between the matrix objects and the float values are
-//! @code{ Math.Matrix eye = Math.Matrix( ({ eyex, eyey, eyez }) ); @}
+//! @code
+//! Math.Matrix eye = Math.Matrix( ({ eyex, eyey, eyez }) );
+//! @endcode
 //!
 //! @seealso
 //!   @[GL.glFrustum], @[gluPerspective]
@@ -84,9 +86,11 @@ void gluLookAt(float|object eye,float|object center,float|object up,
 
 //! gluOrtho2D sets up a two-dimensional orthographic viewing region.
 //! This is equivalent to calling
-//! @code{ glOrtho(left, right, bottom, top, -1.0, 1.0); @}
+//! @code
+//! glOrtho(left, right, bottom, top, -1.0, 1.0);
+//! @endcode
 //! @fixme
-//!   The GLU manual says glOrtho(a,b,c,d, 0, 1).
+//!   The GLU manual says @expr{glOrtho(a,b,c,d, 0, 1)@}.
 //! @seealso
 //!   @[GL.glOrtho], @[gluPerspective]
 void gluOrtho2D(float left, float right,
diff --git a/lib/modules/Geography.pmod/Countries.pmod b/lib/modules/Geography.pmod/Countries.pmod
index 2ddcbf7ed4..37e4b50c1f 100644
--- a/lib/modules/Geography.pmod/Countries.pmod
+++ b/lib/modules/Geography.pmod/Countries.pmod
@@ -375,7 +375,7 @@ class Country
    //! @decl string cast("string")
    //!	It is possible to cast a country to a string,
    //!	which will be the same as performing 
-   //!	@code{country->name;@}.
+   //!	@expr{country->name;@}.
    string cast(string to)
    {
       if (to[..5]=="string") return name;
@@ -531,7 +531,7 @@ mapping(string:array(Country)) continents()
 //!	is in the name- and domain-space and
 //!	returns that country if possible:
 //!
-//!     @tt{
+//! @code
 //! > Geography.Countries.se;    
 //! Result: Country(Sweden)
 //! > Geography.Countries.djibouti;
@@ -540,7 +540,7 @@ mapping(string:array(Country)) continents()
 //! Result: Country(United States)
 //! > Geography.Countries.wallis_and_futuna_islands->iso2;
 //! Result: "WF"
-//! 	@}
+//! @endcode
 
 Country|function(string:Country)|array(Country)|program
    `->(string what)
diff --git a/lib/modules/Languages.pmod/PLIS.pmod b/lib/modules/Languages.pmod/PLIS.pmod
index cb1b040f79..8bfc5e4ae6 100644
--- a/lib/modules/Languages.pmod/PLIS.pmod
+++ b/lib/modules/Languages.pmod/PLIS.pmod
@@ -901,7 +901,7 @@ Parser(
 //! Creates a new environment on which
 //! it runs init_functions, init_specials
 //! and the following boot code.
-//! @code{
+//! @code
 //! (begin
 //!   (defmacro (cddr x)
 //!     (list (quote cdr) (list (quote cdr) x)))
@@ -925,7 +925,7 @@ Parser(
 //!     (cons (cons (quote lambda)
 //! 		(cons (map car decl) body))
 //! 	  (map cadr decl))))
-//! @}
+//! @endcode
 Environment default_environment()
 {
   Environment env = Environment();
@@ -938,7 +938,7 @@ Environment default_environment()
 //! Instantiates a copy of the default environment and
 //! starts an interactive main loop that connects to
 //! standard I/O. The main loop is as follows:
-//! @code{
+//! @code
 //! (begin
 //!    (define (loop)
 //!      (let ((line (read-line \"PLIS: \")))
@@ -948,7 +948,7 @@ Environment default_environment()
 //!                 (display res)
 //!                (loop)))))
 //!    (loop))
-//! @}
+//! @endcode
 void main()
 {
   Environment e = default_environment();
diff --git a/lib/modules/MIME.pmod/module.pmod b/lib/modules/MIME.pmod/module.pmod
index 0ab265fa57..300dc19190 100644
--- a/lib/modules/MIME.pmod/module.pmod
+++ b/lib/modules/MIME.pmod/module.pmod
@@ -3,7 +3,7 @@
 // RFC1521 functionality for Pike
 //
 // Marcus Comstedt 1996-1999
-// $Id: module.pmod,v 1.7 2003/02/01 20:07:42 marcus Exp $
+// $Id: module.pmod,v 1.8 2003/04/01 17:44:43 nilsson Exp $
 
 
 //! RFC1521, the @b{Multipurpose Internet Mail Extensions@} memo, defines a
@@ -46,15 +46,15 @@
 //! and text char set are also extracted into separate variables for easy
 //! access.
 //!
-//! The Message class does not make any interpretation of the body data,
-//! unless the content type is @tt{multipart@}.  A multipart message
-//! contains several individual messages separated by boundary strings.
-//! The @tt{create@} method of the Message class will divide a multipart
-//! body on these boundaries, and then create individual Message objects
-//! for each part.  These objects will be collected in the array
-//! @tt{body_parts@} within the original Message object.  If any of the new
-//! Message objects have a body of type multipart, the process is of course
-//! repeated recursively.
+//! The Message class does not make any interpretation of the body
+//! data, unless the content type is @tt{multipart@}.  A multipart
+//! message contains several individual messages separated by boundary
+//! strings.  The @[Message->create] method of the Message class will
+//! divide a multipart body on these boundaries, and then create
+//! individual Message objects for each part.  These objects will be
+//! collected in the array @[Message->body_parts] within the original
+//! Message object. If any of the new @[Message] objects have a body of
+//! type multipart, the process is of course repeated recursively.
 
 
 #pike __REAL_VERSION__
@@ -191,8 +191,8 @@ array(string) decode_word( string word )
 //! containing a raw text string and a char set name.
 //!
 //! The text will be transfer encoded according to the encoding argument,
-//! which can be either @tt{"base64"@} or @tt{"quoted-printable"@}
-//! (or either @tt{"b"@} or @tt{"q"@} for short).
+//! which can be either @expr{"base64"@} or @expr{"quoted-printable"@}
+//! (or either @expr{"b"@} or @expr{"q"@} for short).
 //!
 //! If either the second element of the array (the char set name), or
 //! the encoding argument is 0, the raw text is returned as is.
@@ -236,7 +236,7 @@ static string remap(array(string) item)
 
 //! Separates a header value containing @i{text@} into units and calls
 //! @[MIME.decode_word()] on them.  The result is an array where each element
-//! is a result from @tt{decode_word()@}.
+//! is a result from @[decode_word()].
 //!
 //! @seealso
 //! @[MIME.decode_words_tokenized]
@@ -275,11 +275,11 @@ string decode_words_text_remapped( string txt )
   return Array.map(decode_words_text(txt), remap)*"";
 }
 
-//! Tokenizes a header value just like @[MIME.tokenize()], but also converts
-//! encoded words using @[MIME.decode_word()].  The result is an array where
-//! each element is either an @tt{int@} representing a special character,
-//! or an array as returned by @tt{decode_word()@} representing an atom or
-//! a quoted string.
+//! Tokenizes a header value just like @[MIME.tokenize()], but also
+//! converts encoded words using @[MIME.decode_word()].  The result is
+//! an array where each element is either an @expr{int@} representing
+//! a special character, or an @expr{array@} as returned by
+//! @[decode_word()] representing an atom or a quoted string.
 //!
 //! @seealso
 //! @[MIME.decode_words_tokenized_labled]
@@ -319,7 +319,7 @@ array(string|int) decode_words_tokenized_remapped( string phrase )
 //! @string
 //!   @value "special"
 //!     One additional element, containing the character code for the special
-//!     character as an @tt{int@}.
+//!     character as an @expr{int@}.
 //!   @value "word"
 //!     Two additional elements, the first being the word, and the second
 //!     being the character set of this word (or 0 if it did not originate
@@ -378,8 +378,8 @@ array(array(string|int))
 //! by @[encode_word()], after which they are all pasted together.
 //!
 //! @param encoding
-//!   Either @tt{"base64"@} or @tt{"quoted-printable"@}
-//!  (or either @tt{"b"@} or @tt{"q"@} for short).
+//!   Either @expr{"base64"@} or @expr{"quoted-printable"@}
+//!  (or either @expr{"b"@} or @expr{"q"@} for short).
 //!
 string encode_words_text(array(string|array(string)) phrase, string encoding)
 {
@@ -408,8 +408,8 @@ string encode_words_text(array(string|array(string)) phrase, string encoding)
 //! be passed to @[encode_word()].
 //!
 //! @param encoding
-//!   Either @tt{"base64"@} or @tt{"quoted-printable"@}
-//!  (or either @tt{"b"@} or @tt{"q"@} for short).
+//!   Either @expr{"base64"@} or @expr{"quoted-printable"@}
+//!  (or either @expr{"b"@} or @expr{"q"@} for short).
 //!
 //! @seealso
 //!   @[MIME.encode_words_quoted_labled()]
@@ -431,8 +431,8 @@ string encode_words_quoted(array(array(string)|int) phrase, string encoding)
 //! @[encode_words_text()] is expected.
 //!
 //! @param encoding
-//!   Either @tt{"base64"@} or @tt{"quoted-printable"@}
-//!  (or either @tt{"b"@} or @tt{"q"@} for short).
+//!   Either @expr{"base64"@} or @expr{"quoted-printable"@}
+//!  (or either @expr{"b"@} or @expr{"q"@} for short).
 //!
 //! @seealso
 //!   @[MIME.encode_words_quoted()]
@@ -470,11 +470,11 @@ string encode_words_quoted_labled(array(array(string|int|array(string|array(stri
 //! Currently, the function uses the following guesses:
 //! @string
 //!   @value "text"
-//!     @tt{"plain"@}
+//!     @expr{"plain"@}
 //!   @value "message"
-//!     @tt{"rfc822"@}
+//!     @expr{"rfc822"@}
 //!   @value "multipart"
-//!     @tt{"mixed"@}
+//!     @expr{"mixed"@}
 //! @endstring
 //!
 string guess_subtype( string type )
@@ -588,7 +588,7 @@ class Message {
 
   //! If the message is of type @tt{multipart@}, this is an array
   //! containing one Message object for each part of the message.
-  //! If the message is not a multipart, this field is @tt{0@} (zero).
+  //! If the message is not a multipart, this field is @expr{0@} (zero).
   //!
   //! @seealso
   //! @[type], @[boundary]
@@ -610,7 +610,7 @@ class Message {
   //! type @tt{text@}.
   //!
   //! If there is no @tt{Content-Type@} header, the value of this field
-  //! is @tt{"us-ascii"@}.
+  //! is @expr{"us-ascii"@}.
   //!
   //! @seealso
   //! @[type]
@@ -622,7 +622,7 @@ class Message {
   //! from the header.
   //!
   //! If there is no @tt{Content-Type@} header, the value of this field
-  //! is @tt{"text"@}.
+  //! is @expr{"text"@}.
   //!
   //! @seealso
   //! @[subtype], @[params]
@@ -634,7 +634,7 @@ class Message {
   //! from the header.
   //!
   //! If there is no @tt{Content-Type@} header, the value of this field
-  //! is @tt{"plain"@}.
+  //! is @expr{"plain"@}.
   //!
   //! @seealso
   //! @[type], @[params]
@@ -644,7 +644,7 @@ class Message {
   //! The contents of the @tt{Content-Transfer-Encoding@} header.
   //!
   //! If no @tt{Content-Transfer-Encoding@} header is given, this field
-  //! is @tt{0@} (zero).
+  //! is @expr{0@} (zero).
   //!
   //! Transfer encoding and decoding is done transparently by the module,
   //! so this field should be interesting only to applications wishing to
@@ -671,7 +671,7 @@ class Message {
   //! application.
   //!
   //! If there is no @tt{Content-Disposition@} header, this field
-  //! is @tt{0@}.
+  //! is @expr{0@}.
   //!
   string disposition;
 
@@ -781,7 +781,7 @@ class Message {
   //! Select a new transfer encoding for this message.
   //!
   //! The @tt{Content-Transfer-Encoding@} header will be modified accordingly,
-  //! and subsequent calls to @tt{getencoded@} will produce data encoded using
+  //! and subsequent calls to @[getencoded] will produce data encoded using
   //! the new encoding.
   //!
   //! See @[MIME.encode()] for a list of valid encodings.
@@ -870,7 +870,7 @@ class Message {
 
   //! Sets the @tt{charset@} parameter of the @tt{Content-Type@} header.
   //!
-  //! This is equivalent of calling @code{setparam("charset", @[charset])@}.
+  //! This is equivalent of calling @expr{setparam("charset", @[charset])@}.
   //!
   //! @seealso
   //! @[setparam()]
@@ -882,7 +882,7 @@ class Message {
 
   //! Sets the @tt{boundary@} parameter of the @tt{Content-Type@} header.
   //!
-  //! This is equivalent of calling @code{setparam("boundary", @[boundary])@}.
+  //! This is equivalent of calling @expr{setparam("boundary", @[boundary])@}.
   //!
   //! @seealso
   //! @[setparam()]
diff --git a/lib/modules/Parser.pmod/RCS.pike b/lib/modules/Parser.pmod/RCS.pike
index cc5788f3e4..5550b8f308 100644
--- a/lib/modules/Parser.pmod/RCS.pike
+++ b/lib/modules/Parser.pmod/RCS.pike
@@ -1,6 +1,6 @@
 #pike __REAL_VERSION__
 
-// $Id: RCS.pike,v 1.29 2002/12/03 16:08:30 jhs Exp $
+// $Id: RCS.pike,v 1.30 2003/04/01 17:44:23 nilsson Exp $
 
 //! A RCS file parser that eats a RCS *,v file and presents nice pike
 //! data structures of its contents.
@@ -44,17 +44,17 @@
 //! Version number of the head version of the file
 string head;
 
-//! The default branch (or revision), if present, @code{0@} otherwise
+//! The default branch (or revision), if present, @expr{0@} otherwise
 string|int(0..0) branch;
 
 //! The usernames listed in the ACCESS section of the RCS file
 array(string) access;
 
-//! The RCS file comment if present, @code{0@} otherwise
+//! The RCS file comment if present, @expr{0@} otherwise
 string|int(0..0) comment;
 
 //! The keyword expansion options (as named by RCS) if present,
-//! @code{0@} otherwise
+//! @expr{0@} otherwise
 string expand;
 
 //! The RCS file description
@@ -164,7 +164,7 @@ string rcs_file_name;
 //!   mainly for error reporting (truncated RCS file).
 //! @param file_contents
 //!   If a string is provided, that string will be parsed to
-//!   initialize the RCS object. If a zero (@code{0@}) is sent, no
+//!   initialize the RCS object. If a zero (@expr{0@}) is sent, no
 //!   initialization will be performed at all. If no value is given at
 //!   all, but @[file_name] was provided, that file will be loaded and
 //!   parsed for object initialization.
diff --git a/lib/modules/Parser.pmod/XML.pmod/Tree.pmod b/lib/modules/Parser.pmod/XML.pmod/Tree.pmod
index 89232bc69d..4574071d80 100644
--- a/lib/modules/Parser.pmod/XML.pmod/Tree.pmod
+++ b/lib/modules/Parser.pmod/XML.pmod/Tree.pmod
@@ -1,7 +1,7 @@
 #pike __REAL_VERSION__
 
 /*
- * $Id: Tree.pmod,v 1.29 2003/03/13 22:06:37 nilsson Exp $
+ * $Id: Tree.pmod,v 1.30 2003/04/01 17:46:41 nilsson Exp $
  *
  */
 
@@ -229,7 +229,7 @@ class AbstractNode {
   }
   
   //! The [] operator indexes among the node children, so
-  //! @code{node[0]@} returns the first node and @code{node[-1]@} the last.
+  //! @expr{node[0]@} returns the first node and @expr{node[-1]@} the last.
   //! @note
   //!   The [] operator will select a node from all the nodes children,
   //!   not just its element children.
diff --git a/lib/modules/Parser.pmod/module.pmod b/lib/modules/Parser.pmod/module.pmod
index ef60d23199..66d193cb8c 100644
--- a/lib/modules/Parser.pmod/module.pmod
+++ b/lib/modules/Parser.pmod/module.pmod
@@ -1,5 +1,5 @@
 /*
- * $Id: module.pmod,v 1.16 2003/02/25 14:31:29 grubba Exp $
+ * $Id: module.pmod,v 1.17 2003/04/01 17:44:04 nilsson Exp $
  *
  */
 
@@ -15,7 +15,9 @@ class SGML
 //!	but finding the corresponding end-tags.
 //!	
 //!	It's used like this:
-//!	@code{array res=Parser.SGML()->feed(string)->finish()->result();@}
+//! @code
+//! array res=Parser.SGML()->feed(string)->finish()->result();
+//! @endcode
 //!
 //!	The resulting structure is an array of atoms,
 //!	where the atom can be a string or a tag.
diff --git a/lib/modules/Protocols.pmod/HTTP.pmod/Query.pike b/lib/modules/Protocols.pmod/HTTP.pmod/Query.pike
index 81a66ef586..b518a64665 100644
--- a/lib/modules/Protocols.pmod/HTTP.pmod/Query.pike
+++ b/lib/modules/Protocols.pmod/HTTP.pmod/Query.pike
@@ -1,6 +1,6 @@
 #pike __REAL_VERSION__
 
-// $Id: Query.pike,v 1.54 2003/03/31 14:20:43 mirar Exp $
+// $Id: Query.pike,v 1.55 2003/04/01 17:42:46 nilsson Exp $
 
 //!	Open and execute an HTTP query.
 
@@ -353,8 +353,9 @@ mapping hostname_cache=([]);
 //!	Set this to an array of Protocols.DNS.async_clients,
 //!	if you wish to limit the number of outstanding DNS
 //!	requests. Example:
-//!	   @code{async_dns = allocate(20, Protocols.DNS.async_client)();@}
-//!
+//! @code
+//! async_dns = allocate(20, Protocols.DNS.async_client)();
+//! @endcode
 array async_dns=0;
 
 void dns_lookup_callback(string name,string ip,function callback,
@@ -773,16 +774,33 @@ int total_bytes()
 }
 
 //! @decl array cast("array")
-//!	Gives back @code{({mapping headers, string data,
-//!		           string protocol, int status, string status_desc});@}
+//! @returns
+//!   @array
+//!     @elem mapping 0
+//!       Headers
+//!     @elem string 1
+//!       Data
+//!     @elem string 2
+//!       Protocol
+//!     @elem int 3
+//!       Status
+//!     @elem string 4
+//!       Status description
+//!   @endarray
 
 //! @decl mapping cast("mapping")
-//!	Gives back
-//!	@code{ headers |
-//!	(["protocol":protocol,
-//!	  "status":status number,
-//!	  "status_desc":status description,
-//!	  "data":data]); @}
+//! @returns
+//!   The header mapping ORed with the following mapping.
+//!   @mapping
+//!     @member string "protocol"
+//!       The protocol.
+//!     @member int "status"
+//!       The status code.
+//!     @member string "status_desc"
+//!       The status description.
+//!     @member string "data"
+//!       The returned data.
+//!   @endmapping
 
 //! @decl string cast("string")
 //!	Gives back the answer as a string.
@@ -853,7 +871,7 @@ class PseudoFile
 //!	a proper tempo.
 //!
 //!	@[newheaders], @[removeheaders] is applied as:
-//!	@code{(oldheaders|newheaders))-removeheaders@}
+//!	@expr{(oldheaders|newheaders))-removeheaders@}
 //!	Make sure all new and remove-header indices are lower case.
 //!
 //! @seealso
diff --git a/lib/modules/Protocols.pmod/LysKOM.pmod/Request.pmod b/lib/modules/Protocols.pmod/LysKOM.pmod/Request.pmod
index 854cd6e2a8..d1b69f7aec 100644
--- a/lib/modules/Protocols.pmod/LysKOM.pmod/Request.pmod
+++ b/lib/modules/Protocols.pmod/LysKOM.pmod/Request.pmod
@@ -1,6 +1,6 @@
 #pike __REAL_VERSION__
 
-//  $Id: Request.pmod,v 1.9 2001/04/27 13:38:41 grubba Exp $
+//  $Id: Request.pmod,v 1.10 2003/04/01 17:45:35 nilsson Exp $
 //!	This module contains nice abstraction for calls into the
 //!	server. They are named "@tt{@i{call@}@}",
 //!	"@tt{async_@i{call@}@}" or 
@@ -115,7 +115,7 @@ class _Request
    int(0..1) ok;
 
    //!	How the call failed.
-   //!	The call has completed if @code{(ok||error)@}.
+   //!	The call has completed if @expr{(ok||error)@}.
    //!
    object error;
 
diff --git a/lib/modules/Protocols.pmod/XMLRPC.pmod/module.pmod b/lib/modules/Protocols.pmod/XMLRPC.pmod/module.pmod
index 5001cc59fd..bea643da3f 100644
--- a/lib/modules/Protocols.pmod/XMLRPC.pmod/module.pmod
+++ b/lib/modules/Protocols.pmod/XMLRPC.pmod/module.pmod
@@ -9,22 +9,22 @@
 //! Translation rules for conversions from Pike datatypes to XML-RPC
 //! datatypes:
 //!
-//! Pike @code{int@} is translated to XML-RPC @tt{<int>@}.
-//! Pike @code{string@} is translated to XML-RPC @tt{<string>@}.
-//! Pike @code{float@} is translated to XML-RPC @tt{<double>@}.
-//! Pike @code{mapping@} is translated to XML-RPC @tt{<struct>@}.
-//! Pike @code{array@} is translated to XML-RPC @tt{<array>@}.
+//! Pike @expr{int@} is translated to XML-RPC @tt{<int>@}.
+//! Pike @expr{string@} is translated to XML-RPC @tt{<string>@}.
+//! Pike @expr{float@} is translated to XML-RPC @tt{<double>@}.
+//! Pike @expr{mapping@} is translated to XML-RPC @tt{<struct>@}.
+//! Pike @expr{array@} is translated to XML-RPC @tt{<array>@}.
 //!
 //! Translation rules for conversions from XML-RPC datatypes to Pike
 //! datatypes:
 //!
 //! XML-RPC @tt{<i4>@}, @tt{<int>@} and @tt{<boolean>@} are
-//!   translated to Pike @code{int@}.
+//!   translated to Pike @expr{int@}.
 //! XML-RPC @tt{<string>@} and @tt{<base64>@} are translated to
-//!   Pike @code{string@}.
-//! XML_RPC @tt{<double>@} is translated to Pike @code{float@}.
-//! XML-RPC @tt{<struct>@} is translated to Pike @code{mapping@}.
-//! XML-RPC @tt{<array>@} is translated to Pike @code{array@}.
+//!   Pike @expr{string@}.
+//! XML_RPC @tt{<double>@} is translated to Pike @expr{float@}.
+//! XML-RPC @tt{<struct>@} is translated to Pike @expr{mapping@}.
+//! XML-RPC @tt{<array>@} is translated to Pike @expr{array@}.
 //! XML-RPC @tt{<dateTime.iso8601>@} is translated to Pike Calendar object.
 //!
 //! @note
diff --git a/lib/modules/Sql.pmod/Sql.pike b/lib/modules/Sql.pmod/Sql.pike
index d773a7daf3..d9317e81ea 100644
--- a/lib/modules/Sql.pmod/Sql.pike
+++ b/lib/modules/Sql.pmod/Sql.pike
@@ -1,5 +1,5 @@
 /*
- * $Id: Sql.pike,v 1.62 2002/11/29 01:28:57 nilsson Exp $
+ * $Id: Sql.pike,v 1.63 2003/04/01 17:43:45 nilsson Exp $
  *
  * Implements the generic parts of the SQL-interface
  *
@@ -348,8 +348,10 @@ private array(string|mapping(string|int:mixed)) handle_extraargs(string query, a
 //!     value for that index is substituted (quoted) into the query wherever
 //!     the variable is used.
 //!
-//!     @code{ query("select foo from bar where gazonk=:baz",
-//!         ([":baz":"value"])) ) @}
+//! @code
+//! query("select foo from bar where gazonk=:baz",
+//!   ([":baz":"value"])) )
+//! @endcode
 //!
 //!     Binary values (BLOBs) may need to be placed in multisets.
 //!
@@ -357,7 +359,9 @@ private array(string|mapping(string|int:mixed)) handle_extraargs(string query, a
 //!     Arguments as you would use in sprintf. They are automatically
 //!     quoted.
 //!
-//!     @code{ query("select foo from bar where gazonk=%s","value") ) @}
+//! @code
+//! query("select foo from bar where gazonk=%s","value") )
+//! @endcode
 //!   @endol
 array(mapping(string:mixed)) query(object|string q,
                                    mixed ... extraargs)
diff --git a/lib/modules/Stdio.pmod/module.pmod b/lib/modules/Stdio.pmod/module.pmod
index 222c67e75e..e399d8f0bc 100644
--- a/lib/modules/Stdio.pmod/module.pmod
+++ b/lib/modules/Stdio.pmod/module.pmod
@@ -1,4 +1,4 @@
-// $Id: module.pmod,v 1.167 2003/03/19 15:21:29 mast Exp $
+// $Id: module.pmod,v 1.168 2003/04/01 17:42:26 nilsson Exp $
 #pike __REAL_VERSION__
 
 inherit files;
@@ -1384,7 +1384,7 @@ class FILE
   }
 
   //! This function does approximately the same as:
-  //! @code{@[write](@[sprintf](@[format],@@@[data]))@}.
+  //! @expr{@[write](@[sprintf](@[format],@@@[data]))@}.
   //!
   //! @seealso
   //! @[write()], @[sprintf()]
-- 
GitLab