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}