source: git/modules/tools/modgen.h @ 1832501

spielwiese
Last change on this file since 1832501 was 1832501, checked in by Kai Krüger <krueger@…>, 25 years ago
*** empty log message *** git-svn-id: file:///usr/local/Singular/svn/trunk@2949 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 1.5 KB
Line 
1/*
2 *  $Id: modgen.h,v 1.2 1999-03-17 12:41:31 krueger Exp $
3 *
4 */
5
6#define MOD_GEN_VERSION "0.2"
7
8#define BUFLEN 128
9#define TMPL_HEAD ""
10#define TMPL_FOOT ""
11
12class paramdef;
13class procdef;
14class moddef;
15class cfiles;
16
17typedef paramdef * paramdefv;
18typedef procdef * procdefv;
19typedef cfiles * cfilesv;
20typedef moddef * moddefv;
21
22class paramdef {
23 public:
24  paramdefv next;
25  char *name;
26  char *typname;
27  int  typ;
28};
29
30class procdef {
31 public:
32  procdefv next;
33  char *procname;
34  char *funcname;
35  int is_static;
36  paramdefv param;
37  int paramcnt;
38};
39
40class cfiles {
41  public:
42  cfilesv next;
43  char *filename;
44};
45
46class moddef {
47 public:
48  char * name;
49  unsigned int major, minor, level;
50  char * version;
51  char * revision;
52  char * info;
53  char * helpfile;
54};
55
56/*
57 *
58 */
59extern int IsCmd(char *n, int & tok);
60extern char * decl2str(int n, char *name);
61
62extern procdefv Add2proclist(procdefv pi, char *name);
63extern void AddParam(procdefv pi, char *name, char *typname, int typ);
64extern void generate_mod(procdefv pi, moddefv module, cfilesv c_filelist);
65extern void generate_function(procdefv pi, FILE *fp);
66extern void mod_write_header(FILE *fp, char *module);
67extern void generate_header(procdefv pi, FILE *fp);
68extern void write_header(FILE *fp, char *module, char *comment="");
69extern void mod_create_makefile(moddefv module, cfilesv c_filelist);
70extern void make_version(char *p, moddefv module);
71extern cfilesv Add2files(cfilesv cf, char *buff);
72extern void PrintProclist(procdefv pi);
73
Note: See TracBrowser for help on using the repository browser.