Skip to content
← Back

src/syntax/trees/definitions/class.ghul

1
namespace Syntax.Trees.Definitions is
2
3
use Source;
4
5
class CLASS(
6
location: LOCATION,
7
name: Identifiers.Identifier,
8
arguments: TypeExpressions.LIST?,
9
ancestors: TypeExpressions.LIST?,
10
modifiers: Modifiers.LIST,
11
body: Definitions.LIST
12
): Classy is
13
super(location, name, arguments, ancestors, modifiers, body);
14
15
accept(visitor: Visitor) is
16
visitor.visit(self);
17
si
18
19
_walk(visitor: Visitor) is
20
if !visitor.pre(self) then
21
name.walk(visitor);
22
23
if arguments? then
24
arguments.walk(visitor);
25
fi
26
27
if ancestors? then
28
ancestors.walk(visitor);
29
fi
30
31
if let self.primary_params? then
32
primary_params.walk(visitor);
33
fi
34
35
modifiers.walk(visitor);
36
body.walk(visitor);
37
fi
38
39
accept(visitor);
40
si
41
si
42
si