Function parse_composer_json
pub fn parse_composer_json(
content: &str,
uri: &Uri,
) -> Result<ComposerParseResult, ComposerError>Expand description
Parses a composer.json file and extracts all non-platform dependencies with positions.
Handles require and require-dev sections.
Platform packages (php, ext-, lib-) are silently filtered out.
§Errors
Returns an error if JSON parsing fails.
§Examples
use deps_composer::parser::parse_composer_json;
use tower_lsp_server::ls_types::Uri;
let json = r#"{
"require": {
"symfony/console": "^6.0"
}
}"#;
let uri = Uri::from_file_path("/project/composer.json").unwrap();
let result = parse_composer_json(json, &uri).unwrap();
assert_eq!(result.dependencies.len(), 1);
assert_eq!(result.dependencies[0].name, "symfony/console");