LRDE Tiger Compiler
1.34a $Id: 7fef12e1f5fa43449d667a0eec1d837c40fc1202 $
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
function-dec.hh
Go to the documentation of this file.
1
6
#ifndef AST_FUNCTION_DEC_HH
7
# define AST_FUNCTION_DEC_HH
8
9
# include <
ast/exp.hh
>
10
# include <
ast/type-constructor.hh
>
11
# include <
ast/name-ty.hh
>
12
# include <
ast/dec.hh
>
13
# include <
ast/var-decs.hh
>
14
15
namespace
ast
16
{
17
19
class
FunctionDec
:
public
Dec
,
public
TypeConstructor
20
{
21
22
public
:
24
std::list<bool>
escapes_get
()
const
25
{
26
// FIXME: Some code was deleted here.
27
}
28
31
public
:
33
FunctionDec
(
const
Location
& location,
const
misc::symbol
& name,
34
VarDecs
* formals,
NameTy
* result,
Exp
* body);
36
virtual
~FunctionDec
();
39
40
41
public
:
43
virtual
void
accept
(
ConstVisitor
& v)
const override
;
45
virtual
void
accept
(
Visitor
& v)
override
;
47
50
public
:
52
const
VarDecs
&
formals_get
()
const
;
54
VarDecs
&
formals_get
();
56
const
NameTy
*
result_get
()
const
;
58
NameTy
*
result_get
();
60
const
Exp
*
body_get
()
const
;
62
Exp
*
body_get
();
64
void
body_set
(
Exp
*);
67
protected
:
69
VarDecs
*
formals_
;
71
NameTy
*
result_
;
73
Exp
*
body_
;
74
};
75
76
}
// namespace ast
77
78
# include <
ast/function-dec.hxx
>
79
80
#endif // !AST_FUNCTION_DEC_HH
ast
function-dec.hh
Generated on Wed Mar 5 2014 15:47:36 for LRDE Tiger Compiler by
1.8.1.2