diff options
| author | nsfisis <nsfisis@gmail.com> | 2026-06-20 02:45:02 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2026-06-20 02:45:02 +0900 |
| commit | 98af76dbe2815c95d15c20e0f911c4a420b6d848 (patch) | |
| tree | aa3f3dd479f0ffee8542009bf51f43d53234d8c4 /crates/shirabe/src/package/complete_package.rs | |
| parent | cf0e5510dc645038b91c6fcb77ff373cb2a57d49 (diff) | |
| download | php-shirabe-98af76dbe2815c95d15c20e0f911c4a420b6d848.tar.gz php-shirabe-98af76dbe2815c95d15c20e0f911c4a420b6d848.tar.zst php-shirabe-98af76dbe2815c95d15c20e0f911c4a420b6d848.zip | |
feat(package): implement as_package_interface upcast
Make the Rust-only as_package_interface a required trait method and
return self from each concrete implementation, replacing the todo!()
default that PHP needs no equivalent for (implicit subtype coercion).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe/src/package/complete_package.rs')
| -rw-r--r-- | crates/shirabe/src/package/complete_package.rs | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/crates/shirabe/src/package/complete_package.rs b/crates/shirabe/src/package/complete_package.rs index 033db9b..56d50d5 100644 --- a/crates/shirabe/src/package/complete_package.rs +++ b/crates/shirabe/src/package/complete_package.rs @@ -156,6 +156,10 @@ impl CompletePackageInterface for CompletePackage { fn get_archive_excludes(&self) -> Vec<String> { self.archive_excludes.clone() } + + fn as_package_interface(&self) -> &dyn PackageInterface { + self + } } impl PackageInterface for CompletePackage { |
