comparison anagram/agcore/stacks.h @ 0:13d2b8934445

Import AnaGram (near-)release tree into Mercurial.
author David A. Holland
date Sat, 22 Dec 2007 17:52:45 -0500
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:13d2b8934445
1 /*
2 * AnaGram, A System for Syntax Directed Programming
3 * Copyright 1993-2002 Parsifal Software. All Rights Reserved.
4 * See the file COPYING for license and usage terms.
5 *
6 * stacks.h - old stacks
7 */
8
9 #ifndef STACKS_H
10 #define STACKS_H
11
12 #include <stdio.h>
13 #include "port.h"
14
15 class AgString; // from agstring.h
16 struct list_dict; // from dict.h
17 #include "agarray.h"
18
19 extern unsigned nc, nw;
20 extern unsigned int_stack_top;
21
22 extern char *string_base;
23 extern int *list_base;
24
25 void init_stk(void);
26 void reset_stk(void);
27
28 int apprintf(const char *fs, ...) PRINTFFY(1,2);
29 int *build_list(void);
30 char *build_string(void);
31 AgString buildAgString(void);
32 AgArray<int> buildStaticList(void);
33 void concat_list(void);
34 void concat_string(void);
35 int *list_space(int n);
36 int ssprintf(const char *fs, ...) PRINTFFY(1,2);
37 char *string_space(int n);
38
39 /*
40 * These names are all acronyms. Sometime, someone ought to sort out
41 * what they stand for and/or what they do and pick clearer names.
42 */
43 void acs(int c);
44 void ass(const char *s);
45 void aws(int c);
46 int fis(void);
47 int fps(FILE *f);
48 int fws(void);
49 void fdl(list_dict *d, unsigned k);
50 void ics(void);
51 int idl(list_dict *d);
52 int isws(int);
53 void iws(void);
54 int rcs(void);
55 int rps(void);
56 int rws(void);
57 void scs(int c);
58 void sis(int i);
59 void sps(int c1, int c2);
60 void sss(const char *s);
61 void sws(int c);
62 int tis(void);
63 void tss(void);
64 int xws(int c);
65 int xps(int c1, int c2);
66
67 //void ast(void);
68 //void dcs(int n); /* delete char from string */
69 //void delete_stack(void);
70 //int ids(string_dict *d);
71 //void ist(void);
72 //void its(char c, int n);
73 //void slide_stack(void);
74 //void slns(const char *s); /* extract line from string */
75
76 #endif /* STACKS_H */