philip Mon Jan 3 15:21:27 2005 EDT
Modified files: /phpdoc/scripts xml_proto.php Log: Implemented the new doc style
http://cvs.php.net/diff.php/phpdoc/scripts/xml_proto.php?r1=1.18&r2=1.19&ty=u Index: phpdoc/scripts/xml_proto.php diff -u phpdoc/scripts/xml_proto.php:1.18 phpdoc/scripts/xml_proto.php:1.19 --- phpdoc/scripts/xml_proto.php:1.18 Sun Jan 2 15:40:01 2005 +++ phpdoc/scripts/xml_proto.php Mon Jan 3 15:21:26 2005 @@ -16,7 +16,7 @@ | Authors: Brad House <[EMAIL PROTECTED]> | +----------------------------------------------------------------------+ - $Id: xml_proto.php,v 1.18 2005/01/02 20:40:01 didou Exp $ + $Id: xml_proto.php,v 1.19 2005/01/03 20:21:26 philip Exp $ */ /* @@ -52,9 +52,10 @@ - Requires PHP 4.3.0-pre1 or higher now - Usage is totally different 05/06/04 v2.1 - Corrected filenames for OO functions + 01/03/05 v2.2 - Implemented the new doc style */ -$version="2.1"; +$version="2.2"; $funclist=array(); $num_funcs=0; @@ -137,8 +138,8 @@ return(0); } - fwrite($fp, "<?xml version='1.0' encoding='iso-8859-1'?>\n" . - "<!-- $" . "Revision: 1.1 " . "$ -->\n" . + fwrite($fp, '<?xml version="1.0" encoding="iso-8859-1"?>'."\n" . + '<!-- $Revision: 1.19 $ -->'."\n" . "<!-- Generated by xml_proto.php v" . $version . ". Found in /scripts directory of phpdoc. -->\n" . "<reference id=\"ref." . $extension_name . "\">\n" . " <title>$extension_name Functions</title>\n" . @@ -152,17 +153,28 @@ " currently only lists the proto definitions.\n" . " </para>\n" . " </section>\n" . - " <section id=\"" . $extension_name . ".installation\">\n" . - " &reftitle.install;\n" . + " <section id=\"" . $extension_name . ".requirements\">\n" . + " &reftitle.required;\n" . + " <para>\n" . + " To be written. For example what external libraries are required\n" . + " </para>\n" . + " </section>\n\n" . + " <!-- Information found in configure.xml -->\n" . + " &reference.".$extension_name.".configure\n" . + " <!-- Information found in ini.xml -->\n" . + " &reference.".$extension_name.".ini\n\n" . + " <section id=\"" . $extension_name . ".resources\">\n" . + " &reftitle.resources;\n" . " <para>\n" . - " To be written. Probably running configure with the\n" . - " <option role=\"configure\">--with-" . $extension_name . "</option>\n" . - " will properly enable this module.\n" . + " Type of resource types (link id, etc.) this extension returns.\n" . + " &no.resources;\n" . " </para>\n" . " </section>\n" . + " <!-- Information found in constants.xml -->\n" . + " &references.".$extension_name."constants\n" . " </partintro>\n" . " &reference." . $extension_name . ".functions;\n" . - "</reference>\n" . + "</reference>\n\n" . "<!-- Keep this comment at the end of the file\n" . "Local variables:\n" . "mode: sgml\n" . @@ -209,8 +221,8 @@ $purpose = trim($funclist[$i]["purpose"]); $functype = trim($funclist[$i]["function_type"]); - fwrite($fp, "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n" . - "<!-- $" . "Revision: 1.1 $ -->\n" . + fwrite($fp, '<?xml version="1.0" encoding="iso-8859-1"?>'."\n" . + '<!-- $Revision: 1.19 $ -->'."\n" . "<!-- Generated by xml_proto.php v" . $version . ". Found in /scripts directory of phpdoc. -->\n" . "<refentry id=\"function." . $fixname . "\">\n" . " <refnamediv>\n" . @@ -224,6 +236,7 @@ " <methodsynopsis>\n" . " <type>$functype</type><methodname>$funcname</methodname>\n"); + $argnames = array(); for ($j=0; $j<$funclist[$i]["num_args"]; $j++) { $argtype = $funclist[$i]["args"][$j]["type"]; $argname = $funclist[$i]["args"][$j]["variable"]; @@ -233,6 +246,7 @@ } $isopt=$funclist[$i]["args"][$j]["isopt"]; fwrite($fp, " <methodparam" . ($isopt ? " choice=\"opt\"" : "") . "><type>$argtype</type><parameter" . ($isref ? " role=\"reference\"" : "") . ">$argname</parameter></methodparam>\n"); + $argnames[] = $argname; } if ($funclist[$i]["num_args"] == 0){ @@ -242,28 +256,138 @@ fwrite($fp, " </methodsynopsis>\n\n" . " &warn.undocumented.func;\n\n" . " </refsect1>\n" . - "</refentry>\n" . - "\n" . - "<!-- Keep this comment at the end of the file\n" . - "Local variables:\n" . - "mode: sgml\n" . - "sgml-omittag:t\n" . - "sgml-shorttag:t\n" . - "sgml-minimize-attributes:nil\n" . - "sgml-always-quote-attributes:t\n" . - "sgml-indent-step:1\n" . - "sgml-indent-data:t\n" . - "indent-tabs-mode:nil\n" . - "sgml-parent-document:nil\n" . - "sgml-default-dtd-file:\"../../../../manual.ced\"\n" . - "sgml-exposed-tags:nil\n" . - "sgml-local-catalogs:nil\n" . - "sgml-local-ecat-files:nil\n" . - "End:\n" . - "vim600: syn=xml fen fdm=syntax fdl=2 si\n" . - "vim: et tw=78 syn=sgml\n" . - "vi: ts=1 sw=1\n" . - "-->\n"); + " <refsect1 role=\"parameters\">\n" . + " &reftitle.parameters;\n" . + " <para>\n" + ); + if (count($argnames) > 0) { + $tmp = " <variablelist>\n"; + foreach ($argnames as $argname) { + $tmp .= '' . + " <varlistentry>\n" . + " <term><parameter>{$argname}</parameter></term>\n" . + " <listitem>\n" . + " <para>\n" . + " Its description\n" . + " </para>\n" . + " </listitem>\n" . + " </varlistentry>\n"; + } + $tmp .= " </variablelist>\n </para>\n </refsect1>\n"; + fwrite($fp, $tmp); + } + fwrite($fp, + " <refsect1 role=\"returnvalues\">\n" . + " &reftitle.returnvalues;\n" . + " <para>\n" . + " What the function returns, first on success, then on failure. See\n" . + " also the &return.success; entity\n" . + " </para>\n" . + " </refsect1>\n" + ); + fwrite($fp, + "\n <!-- Use when EXCEPTIONS exist\n" . + " <refsect1 role=\"exceptions\">\n" . + " &reftitle.exceptions;\n" . + " <para>\n" . + " When does this function throw exceptions?\n" . + " </para>\n" . + " </refsect1>\n" . + " -->\n\n" + ); + fwrite($fp, + "\n <!-- Use when a CHANGELOG exists\n" . + " <refsect1 role=\"changelog\">\n" . + " &reftitle.changelog;\n" . + " <para>\n" . + " <informaltable>\n" . + " <tgroup cols=\"2\">\n" . + " <thead>\n" . + " <row>\n" . + " <entry>&Version;</entry>\n" . + " <entry>&Description</entry>\n" . + " </row>\n" . + " </thead>\n" . + " <tbody>\n" . + " <row>\n" . + " <entry>Enter the PHP version of change here\n" . + " <entry>Description of change\n" . + " </row>\n" . + " </tbody>\n" . + " </tgroup>\n" . + " </informaltable>\n" . + " </para>\n" . + " </refsect1>\n" . + " -->\n\n" + ); + fwrite($fp, + "\n <!-- Use when examples exist\n" . + " <refsect1 role=\"examples\">\n" . + " &reftitle.examples;\n" . + " <para>\n" . + " <example>\n" . + " <title><function>A " . $fixname . " example</title>\n" . + " <para>\n" . + " Any text that describes the purpose of the example, or\n" . + " what goes on in the example should go here (inside the\n" . + " <example> tag, not out\n" . + " </para>\n" . + " <programlisting role=\"php\">\n" . + "<![CDATA[\n" . + "<?php\n" . + "if (\$anexample === true) {\n" . + " echo 'Use the PEAR Coding Standards';\n" . + "}\n" . + "?>\n" . + "]]>\n" . + " </programlisting>\n" . + " &example.outputs;\n" . + " <screen>\n" . + "<!CDATA[\n" . + "Use the PEAR Coding Standards\n" . + "]]>\n" . + " </screen>\n" . + " </example>\n" . + " </para>\n" . + " </refsect1>\n" . + " -->\n\n" + ); + fwrite($fp, + "\n <!-- Use when adding See Also links\n" . + " <refsect1 role=\"seealso\">\n" . + " &reftitle.seealso;\n" . + " <para>\n" . + " <simplelist>\n" . + " <member><function></function></member>\n" . + " <member>Or <link linkend=\"somethingelse\">something else</link></member>\n" . + " </simplelist>\n" . + " </para>\n" . + " </refsect1>\n" . + " -->\n\n" + ); + fwrite($fp, + "\n</refentry>\n\n" . + "<!-- Keep this comment at the end of the file\n" . + "Local variables:\n" . + "mode: sgml\n" . + "sgml-omittag:t\n" . + "sgml-shorttag:t\n" . + "sgml-minimize-attributes:nil\n" . + "sgml-always-quote-attributes:t\n" . + "sgml-indent-step:1\n" . + "sgml-indent-data:t\n" . + "indent-tabs-mode:nil\n" . + "sgml-parent-document:nil\n" . + "sgml-default-dtd-file:\"../../../../manual.ced\"\n" . + "sgml-exposed-tags:nil\n" . + "sgml-local-catalogs:nil\n" . + "sgml-local-ecat-files:nil\n" . + "End:\n" . + "vim600: syn=xml fen fdm=syntax fdl=2 si\n" . + "vim: et tw=78 syn=sgml\n" . + "vi: ts=1 sw=1\n" . + "-->\n" + ); fclose($fp); echo "Wrote: $filename\n"; }