maid-lang 1.1.0

Maid Programming Language
Documentation
use crate::{
    lexing::{position::Position, token::Token},
    nodes::ast_node::AstNode,
};

#[derive(Debug, Clone)]
pub struct UnaryOperatorNode {
    pub op_token: Token,
    pub node: Box<AstNode>,
    pub pos_start: Option<Position>,
    pub pos_end: Option<Position>,
}

impl UnaryOperatorNode {
    pub fn new(op_token: Token, node: Box<AstNode>) -> Self {
        let pos_end = node.position_end();

        Self {
            op_token: op_token.to_owned(),
            node,
            pos_start: op_token.pos_start,
            pos_end,
        }
    }
}