source: trunk/third/tcsh/sh.decls.h @ 9006

Revision 9006, 12.5 KB checked in by ghudson, 28 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r9005, which included commits to RCS files with non-trunk default branches.
Line 
1/* $Header: /afs/dev.mit.edu/source/repository/third/tcsh/sh.decls.h,v 1.1.1.1 1996-10-02 06:09:23 ghudson Exp $ */
2/*
3 * sh.decls.h    External declarations from sh*.c
4 */
5/*-
6 * Copyright (c) 1980, 1991 The Regents of the University of California.
7 * All rights reserved.
8 *
9 * Redistribution and use in source and binary forms, with or without
10 * modification, are permitted provided that the following conditions
11 * are met:
12 * 1. Redistributions of source code must retain the above copyright
13 *    notice, this list of conditions and the following disclaimer.
14 * 2. Redistributions in binary form must reproduce the above copyright
15 *    notice, this list of conditions and the following disclaimer in the
16 *    documentation and/or other materials provided with the distribution.
17 * 3. All advertising materials mentioning features or use of this software
18 *    must display the following acknowledgement:
19 *      This product includes software developed by the University of
20 *      California, Berkeley and its contributors.
21 * 4. Neither the name of the University nor the names of its contributors
22 *    may be used to endorse or promote products derived from this software
23 *    without specific prior written permission.
24 *
25 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
26 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
29 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
30 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
31 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
32 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
33 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
34 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
35 * SUCH DAMAGE.
36 */
37#ifndef _h_sh_decls
38#define _h_sh_decls
39
40/*
41 * sh.c
42 */
43extern  int               gethdir       __P((Char *));
44extern  void              dosource      __P((Char **, struct command *));
45extern  void              exitstat      __P((void));
46extern  void              goodbye       __P((Char **, struct command *));
47extern  void              importpath    __P((Char *));
48extern  void              initdesc      __P((void));
49extern  sigret_t          pintr         __P((int));
50extern  void              pintr1        __P((bool));
51extern  void              process       __P((bool));
52extern  void              untty         __P((void));
53#ifdef PROF
54extern  void              done          __P((int));
55#else
56extern  void              xexit         __P((int));
57#endif
58
59/*
60 * sh.dir.c
61 */
62extern  void              dinit         __P((Char *));
63extern  void              dodirs        __P((Char **, struct command *));
64extern  Char             *dcanon        __P((Char *, Char *));
65extern  void              dtildepr      __P((Char *, Char *));
66extern  void              dtilde        __P((void));
67extern  void              dochngd       __P((Char **, struct command *));
68extern  Char             *dnormalize    __P((Char *, int));
69extern  void              dopushd       __P((Char **, struct command *));
70extern  void              dopopd        __P((Char **, struct command *));
71extern  void              dfree         __P((struct directory *));
72extern  void              dsetstack     __P((void));
73extern  int               getstakd      __P((Char *, int));
74extern  void              recdirs       __P((Char *));
75extern  void              loaddirs      __P((Char *));
76
77/*
78 * sh.dol.c
79 */
80extern  void              Dfix          __P((struct command *));
81extern  Char             *Dfix1         __P((Char *));
82extern  void              heredoc       __P((Char *));
83
84/*
85 * sh.err.c
86 */
87extern  void              seterror      __P((unsigned int, ...));
88extern  void              stderror      __P((unsigned int, ...));
89
90/*
91 * sh.exec.c
92 */
93extern  void              doexec        __P((struct command *));
94extern  void              dohash        __P((Char **, struct command *));
95extern  void              dounhash      __P((Char **, struct command *));
96extern  void              execash       __P((Char **, struct command *));
97#ifdef VFORK
98extern  void              hashstat      __P((Char **, struct command *));
99#endif
100extern  void              xechoit       __P((Char **));
101extern  int               executable    __P((Char *, Char *, bool));
102extern  void              tellmewhat    __P((struct wordent *));
103extern  void              dowhere       __P((Char **, struct command *));
104extern  int               find_cmd      __P((Char *, int));
105
106/*
107 * sh.exp.c
108 */
109extern  int               expr          __P((Char ***));
110extern  int               exp0          __P((Char ***, bool));
111
112/*
113 * sh.file.c
114 */
115#ifdef FILEC
116extern  int               tenex         __P((Char *, int));
117#endif
118
119/*
120 * sh.func.c
121 */
122extern  void              tsetenv       __P((Char *, Char *));
123extern  void              Unsetenv      __P((Char *));
124extern  void              doalias       __P((Char **, struct command *));
125extern  void              dobreak       __P((Char **, struct command *));
126extern  void              docontin      __P((Char **, struct command *));
127extern  void              doecho        __P((Char **, struct command *));
128extern  void              doelse        __P((Char **, struct command *));
129extern  void              doend         __P((Char **, struct command *));
130extern  void              doeval        __P((Char **, struct command *));
131extern  void              doexit        __P((Char **, struct command *));
132extern  void              doforeach     __P((Char **, struct command *));
133extern  void              doglob        __P((Char **, struct command *));
134extern  void              dogoto        __P((Char **, struct command *));
135extern  void              doif          __P((Char **, struct command *));
136extern  void              dolimit       __P((Char **, struct command *));
137extern  void              dologin       __P((Char **, struct command *));
138extern  void              dologout      __P((Char **, struct command *));
139#ifdef NEWGRP
140extern  void              donewgrp      __P((Char **, struct command *));
141#endif
142extern  void              donohup       __P((Char **, struct command *));
143extern  void              doonintr      __P((Char **, struct command *));
144extern  void              dorepeat      __P((Char **, struct command *));
145extern  void              dosetenv      __P((Char **, struct command *));
146extern  void              dosuspend     __P((Char **, struct command *));
147extern  void              doswbrk       __P((Char **, struct command *));
148extern  void              doswitch      __P((Char **, struct command *));
149extern  void              doumask       __P((Char **, struct command *));
150extern  void              dounlimit     __P((Char **, struct command *));
151extern  void              dounsetenv    __P((Char **, struct command *));
152extern  void              dowhile       __P((Char **, struct command *));
153extern  void              dozip         __P((Char **, struct command *));
154extern  void              func          __P((struct command *,
155                                             struct biltins *));
156extern  void              gotolab       __P((Char *));
157extern struct biltins    *isbfunc       __P((struct command *));
158extern  void              prvars        __P((void));
159extern  int               srchx         __P((Char *));
160extern  void              unalias       __P((Char **, struct command *));
161extern  void              wfree         __P((void));
162extern  void              dobuiltins    __P((Char **, struct command *));
163
164/*
165 * sh.glob.c
166 */
167extern  Char             *globequal     __P((Char *, Char *));
168extern  Char            **dobackp       __P((Char *, bool));
169extern  void              Gcat          __P((Char *, Char *));
170extern  Char             *globone       __P((Char *, int));
171extern  int               Gmatch        __P((Char *, Char *));
172extern  int               Gnmatch       __P((Char *, Char *, Char **));
173extern  void              ginit         __P((void));
174extern  Char            **globall       __P((Char **));
175extern  void              rscan         __P((Char **, void (*)()));
176extern  void              tglob         __P((Char **));
177extern  void              trim          __P((Char **));
178#ifdef FILEC
179extern  int               sortscmp      __P((Char **, Char **));
180#endif
181
182/*
183 * sh.hist.c
184 */
185extern  void              dohist        __P((Char **, struct command *));
186extern  struct Hist      *enthist       __P((int, struct wordent *, bool));
187extern  void              savehist      __P((struct wordent *));
188extern  void              fmthist       __P((int, ptr_t, char *));
189extern  void              rechist       __P((Char *));
190extern  void              loadhist      __P((Char *));
191
192
193/*
194 * sh.lex.c
195 */
196extern  void              addla         __P((Char *));
197extern  void              bseek         __P((struct Ain *));
198extern  void              btell         __P((struct Ain *));
199extern  void              btoeof        __P((void));
200extern  void              copylex       __P((struct wordent *,
201                                             struct wordent *));
202extern  Char             *domod         __P((Char *, int));
203extern  void              freelex       __P((struct wordent *));
204extern  int               lex           __P((struct wordent *));
205extern  void              prlex         __P((struct wordent *));
206extern  int               readc         __P((bool));
207extern  void              settell       __P((void));
208extern  void              unreadc       __P((int));
209
210
211/*
212 * sh.misc.c
213 */
214extern  int               any           __P((char *, int));
215extern  Char            **blkcpy        __P((Char **, Char **));
216extern  void              blkfree       __P((Char **));
217extern  int               blklen        __P((Char **));
218extern  void              blkpr         __P((Char **));
219extern  Char            **blkspl        __P((Char **, Char **));
220#ifndef copy
221extern  void              copy          __P((char *, char *, int));
222#endif
223extern  void              closem        __P((void));
224#ifndef CLOSE_ON_EXEC
225extern  void              closech       __P((void));
226#endif /* !CLOSE_ON_EXEC */
227extern  Char            **copyblk       __P((Char **));
228extern  int               dcopy         __P((int, int));
229extern  int               dmove         __P((int, int));
230extern  void              donefds       __P((void));
231extern  Char              lastchr       __P((Char *));
232extern  void              lshift        __P((Char **, int));
233extern  int               number        __P((Char *));
234extern  int               prefix        __P((Char *, Char *));
235extern  Char            **saveblk       __P((Char **));
236extern  void              setzero       __P((char *, int));
237extern  Char             *strip         __P((Char *));
238extern  Char             *quote         __P((Char *));
239extern  char             *strsave       __P((const char *));
240extern  char             *strspl        __P((char *, char *));
241#ifndef POSIX
242extern  char             *strstr        __P((const char *, const char *));
243#endif
244extern  void              udvar         __P((Char *));
245#ifndef SHORT_STRINGS
246extern  char             *strend        __P((char *));
247#endif
248
249/*
250 * sh.parse.c
251 */
252extern  void              alias         __P((struct wordent *));
253extern  void              freesyn       __P((struct command *));
254extern struct command    *syntax        __P((struct wordent *,
255                                             struct wordent *, int));
256
257/*
258 * sh.print.c
259 */
260extern  void              draino        __P((void));
261extern  void              flush         __P((void));
262#ifdef BSDTIMES
263extern  void              pcsecs        __P((long));
264#else /* !BSDTIMES */
265# ifdef POSIX
266extern  void              pcsecs        __P((clock_t));
267# else /* !POSIX */
268extern  void              pcsecs        __P((time_t));
269# endif /* !POSIX */
270#endif /* BSDTIMES */
271#ifdef BSDLIMIT
272extern  void              psecs         __P((long));
273#endif /* BSDLIMIT */
274extern  int               putpure       __P((int));
275extern  int               putraw        __P((int));
276extern  void              xputchar      __P((int));
277
278
279/*
280 * sh.proc.c
281 */
282extern  void              dobg          __P((Char **, struct command *));
283extern  void              dobg1         __P((Char **, struct command *));
284extern  void              dofg          __P((Char **, struct command *));
285extern  void              dofg1         __P((Char **, struct command *));
286extern  void              dojobs        __P((Char **, struct command *));
287extern  void              dokill        __P((Char **, struct command *));
288extern  void              donotify      __P((Char **, struct command *));
289extern  void              dostop        __P((Char **, struct command *));
290extern  void              dowait        __P((Char **, struct command *));
291extern  void              palloc        __P((int, struct command *));
292extern  void              panystop      __P((bool));
293extern  sigret_t          pchild        __P((int));
294extern  void              pendjob       __P((void));
295extern  int               pfork         __P((struct command *, int));
296extern  void              pgetty        __P((int, int));
297extern  void              pjwait        __P((struct process *));
298extern  void              pnote         __P((void));
299extern  void              prestjob      __P((void));
300extern  void              psavejob      __P((void));
301extern  void              pstart        __P((struct process *, int));
302extern  void              pwait         __P((void));
303extern  struct process   *pfind         __P((Char *));
304
305/*
306 * sh.sem.c
307 */
308extern  void              execute       __P((struct command *, int, int *,
309                                             int *));
310extern  void              mypipe        __P((int *));
311
312/*
313 * sh.set.c
314 */
315extern  struct varent    *adrof1        __P((Char *, struct varent *));
316extern  void              doset         __P((Char **, struct command *));
317extern  void              dolet         __P((Char **, struct command *));
318extern  Char             *putn          __P((int));
319extern  int               getn          __P((Char *));
320extern  Char             *value1        __P((Char *, struct varent *));
321extern  void              set           __P((Char *, Char *));
322extern  void              set1          __P((Char *, Char **, struct varent *));
323extern  void              setq          __P((Char *, Char **, struct varent *));
324extern  void              unset         __P((Char **, struct command *));
325extern  void              unset1        __P((Char *[], struct varent *));
326extern  void              unsetv        __P((Char *));
327extern  void              setNS         __P((Char *));
328extern  void              shift         __P((Char **, struct command *));
329extern  void              plist         __P((struct varent *));
330
331/*
332 * sh.time.c
333 */
334extern  void              donice        __P((Char **, struct command *));
335extern  void              dotime        __P((Char **, struct command *));
336#ifdef BSDTIMES
337extern  void              prusage       __P((struct rusage *, struct rusage *,
338                                             timeval_t *, timeval_t *));
339extern  void              ruadd         __P((struct rusage *, struct rusage *));
340#else /* BSDTIMES */
341# ifdef _SEQUENT_
342extern  void              prusage       __P((struct process_stats *,
343                                             struct process_stats *,
344                                             timeval_t *, timeval_t *));
345extern  void              ruadd         __P((struct process_stats *,
346                                             struct process_stats *));
347# else /* !_SEQUENT_ */
348#  ifdef POSIX
349extern  void              prusage       __P((struct tms *, struct tms *,
350                                             clock_t, clock_t));
351#  else /* !POSIX */
352extern  void              prusage       __P((struct tms *, struct tms *,
353                                             time_t, time_t));
354#  endif /* !POSIX */
355# endif /* !_SEQUENT_ */
356#endif /* BSDTIMES */
357extern  void              settimes      __P((void));
358#if defined(BSDTIMES) || defined(_SEQUENT_)
359extern  void              tvsub         __P((struct timeval *,
360                                             struct timeval *,
361                                             struct timeval *));
362#endif /* BSDTIMES || _SEQUENT_ */
363
364#endif /* _h_sh_decls */
Note: See TracBrowser for help on using the repository browser.