Skip to content
← Back

src/syntax/trees/statements/statement.ghul

1
namespace Syntax.Trees.Statements is
2
use Source;
3
use IR.Values.Value;
4
5
use Logging;
6
7
class Statement(location: LOCATION): Trees.Node abstract is
8
// Compile-expressions output; contents owned by that pass.
9
compile_expressions_state: Syntax.Process.STATEMENT_STATE field;
10
11
value: Value? => compile_expressions_state.value;
12
want_value: bool => compile_expressions_state.want_value;
13
14
expects_semicolon: bool => false;
15
provides_value: bool => false;
16
is_tuple_literal: bool => false;
17
18
super(location);
19
20
set_expected_type(expected_type: Semantic.Types.Type?, error_message: string?) is
21
si
22
23
clear_expected_type() is
24
si
25
26
clear() is
27
super.clear();
28
compile_expressions_state.clear();
29
si
30
si
31
si