diff options
Diffstat (limited to 'crates/rebel-parse/src/ast/mod.rs')
-rw-r--r-- | crates/rebel-parse/src/ast/mod.rs | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/crates/rebel-parse/src/ast/mod.rs b/crates/rebel-parse/src/ast/mod.rs index b439873..ebf7241 100644 --- a/crates/rebel-parse/src/ast/mod.rs +++ b/crates/rebel-parse/src/ast/mod.rs @@ -10,39 +10,39 @@ pub type Recipe<'a> = Vec<RecipeStmt<'a>>; #[derive(Debug, Clone, PartialEq, Eq)] pub enum RecipeStmt<'a> { - BodyStmt(BodyStmt<'a>), + BlockStmt(BlockStmt<'a>), Fetch { name: Ident<'a>, - body: Body<'a>, + block: Block<'a>, }, Task { name: Ident<'a>, params: Vec<FuncParam<'a>>, - body: Body<'a>, + block: Block<'a>, }, } impl<'a> RecipeStmt<'a> { pub fn validate(&self) -> Result<(), ValidationError> { match self { - RecipeStmt::BodyStmt(stmt) => stmt.validate(), - RecipeStmt::Fetch { name: _, body } => body.validate(), + RecipeStmt::BlockStmt(stmt) => stmt.validate(), + RecipeStmt::Fetch { name: _, block } => block.validate(), RecipeStmt::Task { name: _, params: _, - body, + block, } => { // TODO: Validate params? - body.validate() + block.validate() } } } } #[derive(Debug, Clone, PartialEq, Eq)] -pub struct Body<'a>(pub Vec<BodyStmt<'a>>); +pub struct Block<'a>(pub Vec<BlockStmt<'a>>); -impl<'a> Body<'a> { +impl<'a> Block<'a> { pub fn validate(&self) -> Result<(), ValidationError> { for stmt in &self.0 { stmt.validate()?; @@ -52,7 +52,7 @@ impl<'a> Body<'a> { } #[derive(Debug, Clone, PartialEq, Eq)] -pub enum BodyStmt<'a> { +pub enum BlockStmt<'a> { Assign { dest: Box<TypedPat<'a>>, expr: Box<Expr<'a>>, @@ -63,7 +63,7 @@ pub enum BodyStmt<'a> { Empty, } -impl<'a> BodyStmt<'a> { +impl<'a> BlockStmt<'a> { pub(crate) fn assign( dest: TypedPat<'a>, op: Option<OpBinary>, @@ -83,7 +83,7 @@ impl<'a> BodyStmt<'a> { } None => expr, }; - BodyStmt::Assign { + BlockStmt::Assign { dest: Box::new(dest), expr: Box::new(expr), } @@ -91,12 +91,12 @@ impl<'a> BodyStmt<'a> { pub fn validate(&self) -> Result<(), ValidationError> { match self { - BodyStmt::Assign { dest: _, expr } => { + BlockStmt::Assign { dest: _, expr } => { // TODO: Destination validation expr.validate() } - BodyStmt::Expr { expr } => expr.validate(), - BodyStmt::Empty => Ok(()), + BlockStmt::Expr { expr } => expr.validate(), + BlockStmt::Empty => Ok(()), } } } |