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
method.hh
Go to the documentation of this file.
1
5
#ifndef TYPE_METHOD_HH
6
# define TYPE_METHOD_HH
7
8
# include <
ast/method-dec.hh
>
9
# include <
type/function.hh
>
10
11
namespace
type
12
{
13
// Forward declaration.
14
class
Class;
15
20
class
Method
:
public
Function
21
{
23
typedef
Function
super_type
;
24
25
public
:
33
Method
(
const
misc::symbol
& name,
const
Class
* owner,
34
const
Record
* formals,
const
Type
& result,
ast::MethodDec
* def);
35
38
virtual
~Method
();
39
42
public
:
44
misc::symbol
name_get
()
const
;
46
const
Class
*
owner_get
()
const
;
48
const
ast::MethodDec
*
def_get
()
const
;
50
ast::MethodDec
*
def_get
();
51
53
void
name_set
(
const
misc::symbol
& name);
55
void
def_set
(
ast::MethodDec
* def);
58
// FIXME: Some code was deleted here (Special implementation of "compatible_with" for type::Method).
59
60
private
:
62
misc::symbol
name_
;
64
const
Class
*
owner_
;
66
ast::MethodDec
*
def_
;
67
};
68
69
}
// namespace type
70
71
# include <
type/method.hxx
>
72
73
#endif // !TYPE_METHOD_HH
type
method.hh
Generated on Wed Mar 5 2014 15:47:37 for LRDE Tiger Compiler by
1.8.1.2