use crate::function_executor::value::Value;
use crate::function_executor::function_schema::FunctionSchema;
use crate::function_executor::function_error::FunctionError;
pub trait FunctionExecutor {
fn schema(&self) -> FunctionSchema;
fn call(&self, input: Value, arguments: &[Value]) -> Result<Value, FunctionError>;
}