1 /*  cfuncs.h  DPL 1997-03-31, 2001-12-22  */
2 
3 #ifndef CFUNCS_H
4 # define CFUNCS_H
5 
6 #define STRINGS_H
7 typedef char Char;
8 typedef void Void;
9 #define Static static
10 #define Local static
11 #define SHORT_MAX 65535
12 
13 # define FileNotFound     10
14 # define FileWriteError   38
15 #ifndef STDIO_H
16 # include <stdio.h>
17 #endif
18 #ifndef CTYPE_H
19 # include <ctype.h>
20 #endif
21 #ifndef STRING_H
22 # include <string.h>
23 #endif
24 #ifndef STDLIB_H
25 # include <stdlib.h>
26 #endif
27 #ifndef _FNSIZE
28 # define _FNSIZE 120
29 #endif
30 
31 typedef unsigned  boolean;
32 #define false 0
33 #define true 1
34 
35 extern int _EscIO (int);
36 extern int _EscIO2 (int errorcode, char* filename);
37 extern int _Escape (int);
38 extern int P_eof (FILE *);
39 extern int _SETIO (int, int);
40 
41 extern void PASCAL_MAIN (int, char **);
42 extern int P_argc;
43 extern int P_ioresult;
44 extern char **P_argv;
45 
46 #ifdef CFUNCS_C
47 # define vextern
48 #else
49 # define vextern extern
50 #endif
51 /* String handling primitives. */
52 
53 extern void scan1(char *s, short p, short *n);
54 /* Read an integer at position p of s */
55 extern boolean startsWith(char *s1, char *s2);
56 /* True if s1 starts with s2 */
57 extern short pos1(char c, char *s);
58 extern short posNot(char c, char *s);
59 extern void insertChar(char c, char *s, short p);
60 extern char *substr_(char *Result, char *s, short start, short count);
61 extern void getNum(char *line, short *k);
62 extern void getTwoNums(char *line, short *k1, short *k2);
63 extern void toUpper(char *s);
64 extern void delete1(char *s, short p);
65 extern void predelete(char *s, short l);
66 extern void shorten(char *s, short new_length);
67 
68 
69 #undef vextern
70 
71 #endif /*CFUNCS_H*/
72 
73