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