Mercurial > octave
comparison src/pt.h @ 2987:ae20b3f37f5e
[project @ 1997-05-16 07:05:15 by jwe]
author | jwe |
---|---|
date | Fri, 16 May 1997 07:05:49 +0000 |
parents | |
children | fc751d2a99fd |
comparison
equal
deleted
inserted
replaced
2986:35b3211c6ff9 | 2987:ae20b3f37f5e |
---|---|
1 /* | |
2 | |
3 Copyright (C) 1996, 1997 John W. Eaton | |
4 | |
5 This file is part of Octave. | |
6 | |
7 Octave is free software; you can redistribute it and/or modify it | |
8 under the terms of the GNU General Public License as published by the | |
9 Free Software Foundation; either version 2, or (at your option) any | |
10 later version. | |
11 | |
12 Octave is distributed in the hope that it will be useful, but WITHOUT | |
13 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
14 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
15 for more details. | |
16 | |
17 You should have received a copy of the GNU General Public License | |
18 along with Octave; see the file COPYING. If not, write to the Free | |
19 Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | |
20 | |
21 */ | |
22 | |
23 #if !defined (octave_tree_h) | |
24 #define octave_tree_h 1 | |
25 | |
26 #if defined (__GNUG__) | |
27 #pragma interface | |
28 #endif | |
29 | |
30 class tree_walker; | |
31 | |
32 // Base class for the parse tree. | |
33 | |
34 class | |
35 tree | |
36 { | |
37 public: | |
38 | |
39 tree (int l = -1, int c = -1) | |
40 { | |
41 line_num = l; | |
42 column_num = c; | |
43 } | |
44 | |
45 virtual ~tree (void) { } | |
46 | |
47 virtual int line (void) const | |
48 { return line_num; } | |
49 | |
50 virtual int column (void) const | |
51 { return column_num; } | |
52 | |
53 virtual void accept (tree_walker& tw) = 0; | |
54 | |
55 private: | |
56 | |
57 // The input line and column where we found the text that was | |
58 // eventually converted to this tree node. | |
59 int line_num; | |
60 int column_num; | |
61 | |
62 // No copying! | |
63 | |
64 tree (const tree&); | |
65 | |
66 tree& operator = (const tree&); | |
67 }; | |
68 | |
69 #endif | |
70 | |
71 /* | |
72 ;;; Local Variables: *** | |
73 ;;; mode: C++ *** | |
74 ;;; End: *** | |
75 */ |