/*
 * shell.h
 *
 * snatched and hacked from wbaker's history library
 * (among other people)
 *
 */

typedef struct hist {
	int hi_argc;			/* count in hi_argv	*/
	char **hi_argv;			/* ptrs to words	*/
	struct hist *hi_next;		/* next in list		*/
} HIST;

typedef struct hqueue {
	int hq_max;			/* max nodes here	*/
	int hq_line;			/* current line number	*/
	int hq_count;			/* current nodes here	*/
	char hq_subc;			/* history sub - '!'	*/
	char hq_lastc;			/* last line sub - '^'	*/
	HIST *hq_head;			/* head of the list	*/
	HIST *hq_tail;			/* tail of the list	*/
} HQUEUE;

typedef struct alias {
	char *al_name;
	char *al_str;
	struct alias *al_next;
} ALIAS;

typedef struct var {
	char *vr_name;
	char *vr_val;
	struct var *vr_next;
} VARS;

