mxmlextrema_as3parser/tree/optional_chaining_expression.rs
1use crate::ns::*;
2use serde::{Serialize, Deserialize};
3
4/// An expression followed by optional chaining operations.
5#[derive(Debug, Clone, Serialize, Deserialize)]
6pub struct OptionalChainingExpression {
7 pub location: Location,
8 pub base: Rc<Expression>,
9 /// Optional chaining operations.
10 ///
11 /// An `OptionalChainingPlaceholder` node is is the topmost expression
12 /// in the `expression` field.
13 pub expression: Rc<Expression>,
14}
15
16/// Internal expression used as the topmost expression
17/// of a sequence of optional chaining operations.
18#[derive(Debug, Clone, Serialize, Deserialize)]
19pub struct OptionalChainingPlaceholder {
20 pub location: Location,
21}