use serde::{Deserialize, Serialize}; use tree_sitter::Node; use crate::{ AbstractTree, Assignment, Block, Error, Expression, Filter, Find, For, IfElse, IndexAssignment, Insert, Map, Match, Remove, Result, Select, Transform, Value, While, }; /// Abstract representation of a statement. #[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq, PartialOrd, Ord)] pub enum Statement { Assignment(Box), Return(Expression), Expression(Expression), IfElse(Box), Match(Match), While(Box), Block(Box), For(Box), Transform(Box), Filter(Box), Find(Box), Remove(Box), Select(Box