Skip to main content

find_function_params

Function find_function_params 

Source
pub fn find_function_params(
    fn_name: &str,
    schema_dir: &Path,
) -> Result<Option<Vec<FunctionParam>>>
Expand description

Find a DEFINE FUNCTION by name and return its parameters.

The fn_name should include the fn:: prefix (e.g., "fn::project::summary"). Scans all .surql files under schema_dir for a matching DEFINE FUNCTION.

Returns None if no matching function is found. Returns Some(params) with the list of parameter names and types.

ยงExample

use std::path::Path;
let params = surql_parser::find_function_params(
    "fn::greet",
    Path::new("surql/"),
).unwrap();
if let Some(params) = params {
    assert_eq!(params[0].name, "name");
    assert_eq!(params[0].kind, "string");
}