Skip to main content

gobject_ast/model/statement/
while_stmt.rs

1use serde::Serialize;
2
3use crate::model::{SourceLocation, expression::Expression, statement::Statement};
4
5#[derive(Debug, Clone, Serialize)]
6pub struct WhileStatement {
7    /// Condition expression
8    pub condition: Box<Expression>,
9    /// Loop body
10    #[serde(skip_serializing_if = "Vec::is_empty")]
11    pub body: Vec<Statement>,
12    pub location: SourceLocation,
13}
14
15#[derive(Debug, Clone, Serialize)]
16pub struct DoWhileStatement {
17    /// Loop body
18    #[serde(skip_serializing_if = "Vec::is_empty")]
19    pub body: Vec<Statement>,
20    /// Condition expression
21    pub condition: Box<Expression>,
22    pub location: SourceLocation,
23}