This commit is contained in:
losfair
2019-02-27 23:38:45 +08:00
parent 3c3c5db2e1
commit d50f1cc95f
2 changed files with 113 additions and 5 deletions

View File

@ -21,10 +21,18 @@ pub enum RegisterName {
Invalid,
}*/
#[derive(Debug)]
pub enum IfElseState {
None,
If(DynamicLabel),
Else,
}
#[derive(Debug)]
pub struct ControlFrame {
pub label: DynamicLabel,
pub loop_like: bool,
pub if_else: IfElseState,
pub returns: Vec<WpType>,
pub value_stack_depth_before: usize,
}
@ -147,6 +155,7 @@ impl ControlStack {
frames: vec![ControlFrame {
label: label,
loop_like: false,
if_else: IfElseState::None,
returns: returns,
value_stack_depth_before: 0,
}],