00001 /* 00002 * File: la_spec.hh 00003 * $Id: la_spec.hh,v 1.6 2002/06/26 20:48:43 alec Exp $ 00004 * 00005 * Author: Alec Panovici (alecu@email.com) 00006 * 00007 * Comments: 00008 * 00009 * Revision history: 00010 * 00011 * $Log: la_spec.hh,v $ 00012 * Revision 1.6 2002/06/26 20:48:43 alec 00013 * g++ 3.x happy 00014 * 00015 * Revision 1.5 2002/06/13 11:39:07 alec 00016 * added #line stuff 00017 * 00018 * Revision 1.4 2002/05/27 03:02:00 alec 00019 * doc update 00020 * 00021 * Revision 1.3 2002/05/08 18:18:58 alec 00022 * *** empty log message *** 00023 * 00024 * Revision 1.2 2002/04/29 09:34:10 alec 00025 * scanner ptree building compiles 00026 * 00027 */ 00028 00029 00030 /* 00031 Copyright (C) 2002 Alexandru Panoviciu (alecu@email.com) 00032 00033 This program is free software; you can redistribute it and/or modify 00034 it under the terms of the GNU General Public License as published by 00035 the Free Software Foundation; either version 2 of the License, or 00036 (at your option) any later version. 00037 00038 This program is distributed in the hope that it will be useful, 00039 but WITHOUT ANY WARRANTY; without even the implied warranty of 00040 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00041 GNU General Public License for more details. 00042 00043 You should have received a copy of the GNU General Public License 00044 along with this program; if not, write to the Free Software 00045 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00046 00047 */ 00048 00049 #ifndef __LA_SPEC_HH__ 00050 #define __LA_SPEC_HH__ 00051 00052 #include <string> 00053 using namespace std; 00054 00055 00056 #include "parse_util.hh" 00057 00058 00059 class EbnfNode; 00060 00064 class LaSpec 00065 { 00066 public: 00067 00068 LaSpec (int fixedLa_, EbnfNode *synLa_, 00069 const string &semLa_, const Position &pos) : 00070 fixedLa(fixedLa_), synLa(synLa_), semLa(pos, semLa_) 00071 {} 00072 00076 int fixedLa; 00077 00081 EbnfNode *synLa; 00082 00087 CodeChunk semLa; 00088 00092 virtual LaSpec* clone() = 0; 00093 00094 }; 00095 00096 #endif /* #ifndef __LA_SPEC_HH__ */