Skip to main content

microcad_lang/eval/statements/
marker.rs

1// Copyright © 2025-2026 The µcad authors <info@microcad.xyz>
2// SPDX-License-Identifier: AGPL-3.0-or-later
3
4use microcad_lang_base::SrcReferrer;
5
6use crate::{eval::*, model::*};
7
8impl Eval<Option<Model>> for Marker {
9    fn eval(&self, _: &mut EvalContext) -> EvalResult<Option<Model>> {
10        if self.is_input_placeholder() {
11            Ok(Some(
12                ModelBuilder::new(Element::InputPlaceholder, self.src_ref()).build(),
13            ))
14        } else {
15            Ok(None)
16        }
17    }
18}