(
params: Option<&serde_json::Value>,
)
| 2175 | |
| 2176 | #[cfg(unix)] |
| 2177 | fn projectless_tool_call( |
| 2178 | params: Option<&serde_json::Value>, |
| 2179 | ) -> std::result::Result<(&str, serde_json::Value), &'static str> { |
| 2180 | let Some(params) = params else { |
| 2181 | return Err("missing params for tools/call"); |
| 2182 | }; |
| 2183 | let Some(tool_name) = params.get("name").and_then(|v| v.as_str()) else { |
| 2184 | return Err("missing 'name' in tools/call params"); |
| 2185 | }; |
| 2186 | let arguments = params |
| 2187 | .get("arguments") |
| 2188 | .cloned() |
| 2189 | .unwrap_or_else(|| serde_json::Value::Object(serde_json::Map::new())); |
| 2190 | Ok((tool_name, arguments)) |
| 2191 | } |
| 2192 | |
| 2193 | #[cfg(unix)] |
| 2194 | struct UnixStreamTransport { |
no test coverage detected