xref: /original-bsd/bin/sh/expand.h (revision b185aca5)
1 /*-
2  * Copyright (c) 1991 The Regents of the University of California.
3  * All rights reserved.
4  *
5  * This code is derived from software contributed to Berkeley by
6  * Kenneth Almquist.
7  *
8  * %sccs.include.redist.c%
9  *
10  *	@(#)expand.h	5.2 (Berkeley) 04/30/92
11  */
12 
13 struct strlist {
14 	struct strlist *next;
15 	char *text;
16 };
17 
18 
19 struct arglist {
20 	struct strlist *list;
21 	struct strlist **lastp;
22 };
23 
24 /*
25  * expandarg() flags
26  */
27 #define EXP_FULL	0x1	/* perform word splitting & file globbing */
28 #define EXP_TILDE	0x2	/* do normal tilde expansion */
29 #define	EXP_VARTILDE	0x4	/* expand tildes in an assignment */
30 #define	EXP_REDIR	0x8	/* file glob for a redirection (1 match only) */
31 
32 
33 #ifdef __STDC__
34 union node;
35 void expandarg(union node *, struct arglist *, int);
36 void expandhere(union node *, int);
37 int patmatch(char *, char *);
38 void rmescapes(char *);
39 int casematch(union node *, char *);
40 #else
41 void expandarg();
42 void expandhere();
43 int patmatch();
44 void rmescapes();
45 int casematch();
46 #endif
47