GNU Octave  3.8.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
pt-jump.h
Go to the documentation of this file.
1 /*
2 
3 Copyright (C) 1996-2013 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 3 of the License, or (at your
10 option) any 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, see
19 <http://www.gnu.org/licenses/>.
20 
21 */
22 
23 #if !defined (octave_pt_jump_h)
24 #define octave_pt_jump_h 1
25 
26 class tree_walker;
27 
28 #include "pt-cmd.h"
29 #include "symtab.h"
30 
31 // Break.
32 
33 class
35 {
36 public:
37 
38  tree_break_command (int l = -1, int c = -1)
39  : tree_command (l, c) { }
40 
42 
45 
46  void accept (tree_walker& tw);
47 
48  static int breaking;
49 
50 private:
51 
52  // No copying!
53 
55 
57 };
58 
59 // Continue.
60 
61 class
63 {
64 public:
65 
66  tree_continue_command (int l = -1, int c = -1)
67  : tree_command (l, c) { }
68 
70 
73 
74  void accept (tree_walker& tw);
75 
76  static int continuing;
77 
78 private:
79 
80  // No copying!
81 
83 
85 };
86 
87 // Return.
88 
89 class
91 {
92 public:
93 
94  tree_return_command (int l = -1, int c = -1)
95  : tree_command (l, c) { }
96 
98 
101 
102  void accept (tree_walker& tw);
103 
104  static int returning;
105 
106 private:
107 
108  // No copying!
109 
111 
113 };
114 
115 #endif