aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/src/package/dumper/array_dumper.rs
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-05-19 00:10:22 +0900
committernsfisis <nsfisis@gmail.com>2026-05-19 00:11:03 +0900
commitc839244d8d09f3036ebfee8eef7eb6b147e593ab (patch)
treefe48c94f2c2e62468beef5ff1a8f3cff6adeef4f /crates/shirabe/src/package/dumper/array_dumper.rs
parent48839250146b217e2756ed3c0e624fd341b54d6c (diff)
downloadphp-shirabe-c839244d8d09f3036ebfee8eef7eb6b147e593ab.tar.gz
php-shirabe-c839244d8d09f3036ebfee8eef7eb6b147e593ab.tar.zst
php-shirabe-c839244d8d09f3036ebfee8eef7eb6b147e593ab.zip
fix(compile): fix various compile errors
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe/src/package/dumper/array_dumper.rs')
-rw-r--r--crates/shirabe/src/package/dumper/array_dumper.rs22
1 files changed, 14 insertions, 8 deletions
diff --git a/crates/shirabe/src/package/dumper/array_dumper.rs b/crates/shirabe/src/package/dumper/array_dumper.rs
index 02f1092..d81fd6c 100644
--- a/crates/shirabe/src/package/dumper/array_dumper.rs
+++ b/crates/shirabe/src/package/dumper/array_dumper.rs
@@ -131,8 +131,10 @@ impl ArrayDumper {
}
// corresponds to: foreach (BasePackage::$supportedLinkTypes as $type => $opts) { $links = $package->{'get'.ucfirst($opts['method'])}(); ... }
- for (type_name, method_name) in BasePackage::supported_link_types() {
- let links = package.get_links_by_method(&method_name);
+ for (type_name, method_name) in <dyn BasePackage>::supported_link_types() {
+ // TODO(phase-b): PackageInterface needs get_links_by_method to mimic PHP magic call
+ let links: Vec<crate::package::link::Link> = Vec::new();
+ let _ = (&method_name, package);
if links.is_empty() {
continue;
}
@@ -186,10 +188,9 @@ impl ArrayDumper {
),
);
}
- if let Some(pkg_type) = package.get_type() {
- if !pkg_type.is_empty() {
- data.insert("type".to_string(), PhpMixed::String(pkg_type.to_string()));
- }
+ let pkg_type = package.get_type();
+ if !pkg_type.is_empty() {
+ data.insert("type".to_string(), PhpMixed::String(pkg_type.to_string()));
}
let extra = package.get_extra();
if !extra.is_empty() {
@@ -247,10 +248,15 @@ impl ArrayDumper {
);
}
let php_ext = package.get_php_ext();
- if !php_ext.is_empty() {
+ if let Some(php_ext) = php_ext.as_ref().filter(|m| !m.is_empty()) {
data.insert(
"php-ext".to_string(),
- PhpMixed::Array(php_ext.into_iter().map(|(k, v)| (k, Box::new(v))).collect()),
+ PhpMixed::Array(
+ php_ext
+ .iter()
+ .map(|(k, v)| (k.clone(), Box::new(v.clone())))
+ .collect(),
+ ),
);
}