Skip to main content

gobject_ast/model/expression/
assignment.rs

1use serde::Serialize;
2
3use crate::model::{AssignmentOp, Expression, SourceLocation};
4
5#[derive(Debug, Clone, Serialize)]
6pub struct Assignment {
7    pub lhs: Box<Expression>, // Can be Identifier or FieldAccess
8    pub operator: AssignmentOp,
9    pub rhs: Box<Expression>,
10    pub location: SourceLocation,
11}
12
13impl Assignment {
14    pub fn lhs_as_text<'a>(&self, source: &'a [u8]) -> &'a str {
15        self.lhs.location().as_str(source).unwrap_or("")
16    }
17}