1/* parser.h -- Everything you wanted to know about the parser, but were 2 afraid to ask. */ 3 4/* Copyright (C) 1995 Free Software Foundation, Inc. 5 6 This file is part of GNU Bash, the Bourne Again SHell. 7 8 Bash is free software; you can redistribute it and/or modify it under 9 the terms of the GNU General Public License as published by the Free 10 Software Foundation; either version 2, or (at your option) any later 11 version. 12 13 Bash is distributed in the hope that it will be useful, but WITHOUT ANY 14 WARRANTY; without even the implied warranty of MERCHANTABILITY or 15 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 16 for more details. 17 18 You should have received a copy of the GNU General Public License along 19 with Bash; see the file COPYING. If not, write to the Free Software 20 Foundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA. */ 21 22#if !defined (_PARSER_H_) 23# define _PARSER_H_ 24 25# include "command.h" 26# include "input.h" 27 28/* Definition of the delimiter stack. Needed by parse.y and bashhist.c. */ 29struct dstack { 30/* DELIMITERS is a stack of the nested delimiters that we have 31 encountered so far. */ 32 char *delimiters; 33 34/* Offset into the stack of delimiters. */ 35 int delimiter_depth; 36 37/* How many slots are allocated to DELIMITERS. */ 38 int delimiter_space; 39}; 40 41#endif /* _PARSER_H_ */ 42