Skip to content
← Back

src/syntax/trees/expressions/await.ghul

1
namespace Syntax.Trees.Expressions is
2
3
use Source;
4
5
// `await E` expression. Operand must be `Tasks.TASK[T]` (AWAIT
6
// typed as T) or non-generic `Tasks.TASK` (AWAIT typed as void).
7
class AWAIT: Expression is
8
operand: Expression;
9
10
init(location: LOCATION, operand: Expression) is
11
super.init(location);
12
13
self.operand = operand;
14
si
15
16
accept(visitor: Visitor) is
17
visitor.visit(self);
18
si
19
20
walk(visitor: Visitor) is
21
if !visitor.pre(self) then
22
operand.walk(visitor);
23
fi
24
accept(visitor);
25
si
26
si
27
si