home *** CD-ROM | disk | FTP | other *** search
-
- #line 555 "nuweb.w"
-
- #line 565 "nuweb.w"
- #include <stdlib.h>
- #include <stdio.h>
- #include <string.h>
- #include <ctype.h>
- #include <limits.h>
-
- #line 555 "nuweb.w"
-
-
- #line 581 "nuweb.w"
- #ifndef FALSE
- #define FALSE 0
- #endif
- #ifndef TRUE
- #define TRUE 1
- #endif
-
- #line 3035 "nuweb.w"
- typedef struct scrap_node {
- struct scrap_node *next;
- int scrap;
- } Scrap_Node;
-
- #line 3044 "nuweb.w"
- typedef struct name {
- char *spelling;
- struct name *llink;
- struct name *rlink;
- Scrap_Node *defs;
- Scrap_Node *uses;
- int mark;
- char tab_flag;
- char indent_flag;
- char debug_flag;
- } Name;
-
- #line 556 "nuweb.w"
-
-
- #line 712 "nuweb.w"
- extern int tex_flag; /* if FALSE, don't emit the documentation file */
- extern int html_flag; /* if TRUE, emit HTML scraps. */
- extern int hw_flag; /* if TRUE, emit HTML scraps from LaTeX input. */
- extern int program_flag; /* if FALSE, don't emit the program files */
- extern int compare_flag; /* if FALSE, overwrite without comparison */
- extern int compline_flag; /* if TRUE, ignore #line directives while comparing */
- extern int verbose_flag; /* if TRUE, write progress information */
- extern int number_flag; /* if TRUE, use a sequential numbering scheme */
- extern int skipnl_flag; /* if TRUE, skip a newline after @{ and before @} */
-
- #line 744 "nuweb.w"
- extern char *command_name;
-
- #line 2296 "nuweb.w"
- extern char *source_name; /* name of the current file */
- extern int source_line; /* current line in the source file */
-
- #line 2593 "nuweb.w"
- extern int already_warned;
-
- #line 3059 "nuweb.w"
- extern Name *file_names;
- extern Name *macro_names;
- extern Name *user_names;
-
- #line 557 "nuweb.w"
-
-
- #line 869 "nuweb.w"
- char *trim_name(char *from, char *to, char **dot);
-
- #line 977 "nuweb.w"
- void pass1(char *file_name);
-
- #line 1121 "nuweb.w"
- void write_tex(char *file_name, char *tex_name);
-
- #line 1628 "nuweb.w"
- void write_html(char *file_name, char *html_name);
-
- #line 2164 "nuweb.w"
- void write_files(Name *files);
-
- #line 2285 "nuweb.w"
- void source_open(char *name);
- int source_get(void); /* returns next char or EOF */
- int source_next(void); /* returns next char to be read by source_get() */
-
- #line 2529 "nuweb.w"
- void init_scraps(void);
- int collect_scrap(void);
- int write_scraps(FILE *file, Scrap_Node *defs, int global_indent,
- char *indent_chars, char debug_flag, char tab_flag, char indent_flag);
- void write_scrap_ref(FILE *file, int num, int first, int *page);
- void write_single_scrap_ref(FILE *file, int num);
-
- #line 2979 "nuweb.w"
- void collect_numbers(char *aux_name);
-
- #line 3073 "nuweb.w"
- Name *collect_file_name(void);
- Name *collect_macro_name(void);
- Name *collect_scrap_name(void);
- Name *name_add(Name *root[], char *spelling);
- Name *prefix_add(Name *root[], char *spelling);
- char *save_string(char *s);
- void reverse_lists(Name *names);
-
- #line 3574 "nuweb.w"
- void search(void);
-
- #line 3802 "nuweb.w"
- void *arena_getmem(size_t n);
- void arena_free(void);
-
- #line 558 "nuweb.w"
-
-