xref: /original-bsd/usr.bin/ex/ex_argv.h (revision 2301fdfb)
1 /*
2  * Copyright (c) 1980 Regents of the University of California.
3  * All rights reserved.  The Berkeley software License Agreement
4  * specifies the terms and conditions for redistribution.
5  *
6  *	@(#)ex_argv.h	7.3 (Berkeley) 05/31/85
7  */
8 
9 /*
10  * The current implementation of the argument list is poor,
11  * using an argv even for internally done "next" commands.
12  * It is not hard to see that this is restrictive and a waste of
13  * space.  The statically allocated glob structure could be replaced
14  * by a dynamically allocated argument area space.
15  */
16 var char	**argv;
17 var char	**argv0;
18 var char	*args;
19 var char	*args0;
20 var short	argc;
21 var short	argc0;
22 var short	morargc;		/* Used with "More files to edit..." */
23 
24 var int	firstln;		/* From +lineno */
25 var char	*firstpat;		/* From +/pat	*/
26 
27 /* Yech... */
28 struct	glob {
29 	short	argc;			/* Index of current file in argv */
30 	short	argc0;			/* Number of arguments in argv */
31 	char	*argv[NARGS + 1];	/* WHAT A WASTE! */
32 	char	argspac[NCARGS + sizeof (int)];
33 };
34 var struct	glob frob;
35