use rhai::Dynamic; use rhai::Engine; pub fn first_keyword(engine: &mut Engine) { engine .register_custom_syntax(&["FIRST", "$expr$"], false, { move |context, inputs| { let input_string = context.eval_expression_tree(&inputs[0])?; let input_str = input_string.to_string(); // Extract first word by splitting on whitespace let first_word = input_str.split_whitespace() .next() .unwrap_or("") .to_string(); Ok(Dynamic::from(first_word)) } }) .unwrap(); }