parse_composer_json

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");