Skip to content
← Back

src/syntax/trees/expressions/reference.ghul

1
namespace Syntax.Trees.Expressions is
2
3
use Source;
4
5
class REFERENCE(location: LOCATION, left: Expression): Expression is
6
super(location);
7
8
// Set once the enclosing call is resolved: true when the matched
9
// parameter writes this `ref` slot, so passing it definitely
10
// assigns the target. Read by the condition analyzer to place
11
// that assignment on the branch edges a `ref` in a condition
12
// reaches.
13
writes_target: bool public;
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
left.walk(visitor);
22
fi
23
24
accept(visitor);
25
si
26
si
27
si