#include "xml/from-txt.h"
#include "xml/dumptree.h"
#include "xml/pdoc-src.h"
#include "xml/pdoc-cpp.h"
#include "xml/gerror.h"
#include <string.h>

#define ___ {
#define ____ }

int
main (int argc, char** argv)
{
    xml_g_set_prgname(argv[0]); 

    if (argc < 2)
    
{
	g_printerr ("> %s filename [options]\n"
		    "\t the program reads an C source text and pritns the\n"
		    "\t internal xml format to stdout. This version is \n"
                    "\t intended for PFE.sf.net sources with their \n"
                    "\t embedded forth documentation and wordsets.\n"
		    "\t options: -hidden -empty (etc.. see sources)\n",
		    g_get_prgname());
	return 1;
    }
___ gchar *filename = 0; const gchar *styleflag = "";
{   int i ; for (i=1; i < argc ; i++) 
{
        if (argv[i][0] == '-') 
{ styleflag = argv[i]; continue; }
if (! filename)
{ filename = argv[i]; continue; }
g_warning ("extra argument on commandline, ignored: %s", argv[i]); }
}
___ xml_GNode* node; GError* error = 0; node = xml_tree_node_from_file (0, filename, &error); if (error) xml_g_show_error (&error, "after parsing file:\n\t'%s'", filename); node = xml_pdoc_c_read (node); if (!strstr (styleflag, "-nodocs")) node = xml_pdoc_c_docs (node); if (!strstr (styleflag, "-noblocks")) node = xml_pdoc_c_blocks (node); if (!strstr (styleflag, "-noblocc")) node = xml_pdoc_c_blocc (node); if (!strstr (styleflag, "-nocdef")) node = xml_pdoc_item_cdef (node); if (!strstr (styleflag, "-noitem")) node = xml_pdoc_item_bloc (node); xml_tree_dump_to_xml_file (node, 0, 1|xml_tree_dump_to_xml_flags (styleflag)); return 0; ____;____; }
/* 
   Local variables:
   c-file-style: "stroustrup"
   End:
 */