ZIm/crates/scripting_tool/src/scripting_tool.rs
Antonio Scandurra f3f97895a9
Improve script tool description and add lines iterator to Lua file objects (#26529)
Release Notes:

- N/A

---------

Co-authored-by: Agus Zubiaga <hi@aguz.me>
2025-03-12 07:58:11 +00:00

30 lines
722 B
Rust

mod scripting_session;
pub use scripting_session::*;
use schemars::JsonSchema;
use serde::Deserialize;
#[derive(Debug, Deserialize, JsonSchema)]
pub struct ScriptingToolInput {
pub lua_script: String,
}
pub struct ScriptingTool;
impl ScriptingTool {
pub const NAME: &str = "lua-interpreter";
pub const DESCRIPTION: &str = include_str!("scripting_tool_description.md");
pub fn input_schema() -> serde_json::Value {
let schema = schemars::schema_for!(ScriptingToolInput);
serde_json::to_value(&schema).unwrap()
}
pub fn deserialize_input(
input: serde_json::Value,
) -> Result<ScriptingToolInput, serde_json::Error> {
serde_json::from_value(input)
}
}