aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/mozart-class-map-generator/src
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-05-11 02:05:34 +0900
committernsfisis <nsfisis@gmail.com>2026-05-11 02:05:34 +0900
commit4df5f8491320e5795718cf0222e80fa27e57c8ad (patch)
tree707e19f34dbdef18490ec3245d34389e3d189a57 /crates/mozart-class-map-generator/src
parent8871b923fa3df1935c263db155cb8bc3d59705cd (diff)
downloadphp-mozart-4df5f8491320e5795718cf0222e80fa27e57c8ad.tar.gz
php-mozart-4df5f8491320e5795718cf0222e80fa27e57c8ad.tar.zst
php-mozart-4df5f8491320e5795718cf0222e80fa27e57c8ad.zip
refactor(package): rename traits and switch dep maps to IndexMap
Rename Package/CompletePackage to PackageInterface/CompletePackageInterface to mirror Composer's interface names, and split each into its own module under crates/mozart-core/src/package/. Switch dependency-link and metadata maps from BTreeMap to indexmap::IndexMap so serialized JSON preserves the original key ordering rather than sorting alphabetically — matching PHP associative-array semantics. The --sort-packages behaviour in `require` is preserved via sort_unstable_keys.
Diffstat (limited to 'crates/mozart-class-map-generator/src')
-rw-r--r--crates/mozart-class-map-generator/src/classmap.rs12
1 files changed, 6 insertions, 6 deletions
diff --git a/crates/mozart-class-map-generator/src/classmap.rs b/crates/mozart-class-map-generator/src/classmap.rs
index e1631f4..17ca04a 100644
--- a/crates/mozart-class-map-generator/src/classmap.rs
+++ b/crates/mozart-class-map-generator/src/classmap.rs
@@ -133,18 +133,18 @@ pub fn path_to_static_expr(file: &Path, vendor_dir: &Path, project_dir: &Path) -
///
/// Returns `(dynamic_classmap, static_classmap, psr_violations)`.
pub fn scan_psr_for_classmap(
- psr4: &BTreeMap<String, Vec<String>>,
- psr0: &BTreeMap<String, Vec<String>>,
+ psr4: &indexmap::IndexMap<String, Vec<String>>,
+ psr0: &indexmap::IndexMap<String, Vec<String>>,
vendor_dir: &Path,
project_dir: &Path,
excluded: &[String],
) -> (
- BTreeMap<String, String>,
- BTreeMap<String, String>,
+ indexmap::IndexMap<String, String>,
+ indexmap::IndexMap<String, String>,
Vec<String>,
) {
- let mut dyn_map: BTreeMap<String, String> = BTreeMap::new();
- let mut static_map: BTreeMap<String, String> = BTreeMap::new();
+ let mut dyn_map = indexmap::IndexMap::new();
+ let mut static_map = indexmap::IndexMap::new();
let mut violations: Vec<String> = Vec::new();
// Helper: resolve a PHP path expression to an absolute path.