/***********************************************************************1* *2* This software is part of the ast package *3* Copyright (c) 1985-2012 AT&T Intellectual Property *4* and is licensed under the *5* Eclipse Public License, Version 1.0 *6* by AT&T Intellectual Property *7* *8* A copy of the License is available at *9* http://www.eclipse.org/org/documents/epl-v10.html *10* (with md5 checksum b35adb5213ca9657e911e9befb180842) *11* *12* Information and Software Systems Research *13* AT&T Research *14* Florham Park NJ *15* *16* Glenn Fowler <[email protected]> *17* David Korn <[email protected]> *18* Phong Vo <[email protected]> *19* *20***********************************************************************/21#pragma prototyped22/*23* cmdarg library private definitions24*/2526#ifndef _CMDLIB_H27#define _CMDLIB_H 12829#define _CMDARG_PRIVATE_ \30struct \31{ \32size_t args; /* total args */ \33size_t commands; /* total commands */ \34} total; \35Error_f errorf; /* optional error callback */ \36Cmdrun_f runf; /* exec function */ \37int argcount; /* current arg count */ \38int argmax; /* max # args */ \39int echo; /* just an echo */ \40int flags; /* CMD_* flags */ \41int insertlen; /* strlen(insert) */ \42int offset; /* post arg offset */ \43Cmddisc_t* disc; /* discipline */ \44char** argv; /* exec argv */ \45char** firstarg; /* first argv file arg */ \46char** insertarg; /* argv before insert */ \47char** postarg; /* start of post arg list */ \48char** nextarg; /* next argv file arg */ \49char* nextstr; /* next string ends before here */ \50char* laststr; /* last string ends before here */ \51char* insert; /* replace with current arg */ \52char buf[1]; /* argv and arg buffer */5354#include <cmdarg.h>5556#endif575859