aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe-php-rpc/php/stubs/Composer/Package/RootPackage.php
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-08-04 05:09:04 +0900
committernsfisis <nsfisis@gmail.com>2026-08-04 05:43:32 +0900
commit80631930a6ca7b64d96a89de61c8b63f302161a8 (patch)
treedc5acf4a8dbe74b576ec7826206defa0e3f8fba1 /crates/shirabe-php-rpc/php/stubs/Composer/Package/RootPackage.php
parent850b67c048bbf80d9739520d950f4dd1ed4190a5 (diff)
downloadphp-shirabe-80631930a6ca7b64d96a89de61c8b63f302161a8.tar.gz
php-shirabe-80631930a6ca7b64d96a89de61c8b63f302161a8.tar.zst
php-shirabe-80631930a6ca7b64d96a89de61c8b63f302161a8.zip
feat(plugin): generate proxy stubs for the package and repository graph
Emit the eleven stubs a subscriber plugin's object-graph calls reach (BasePackage through RootPackage, the installed-repository hierarchy, RepositoryManager, InstallationManager). The generator learns the member kinds these classes need: builtin interfaces contribute no closure entries, public static properties are materialized, public instance properties forward through __get/__set, __toString forwards like a plain method, __clone throws (proxy clone semantics are still an open design question), and a subclass stub may add interfaces to its inherited surface. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe-php-rpc/php/stubs/Composer/Package/RootPackage.php')
-rw-r--r--crates/shirabe-php-rpc/php/stubs/Composer/Package/RootPackage.php71
1 files changed, 71 insertions, 0 deletions
diff --git a/crates/shirabe-php-rpc/php/stubs/Composer/Package/RootPackage.php b/crates/shirabe-php-rpc/php/stubs/Composer/Package/RootPackage.php
new file mode 100644
index 00000000..7584787d
--- /dev/null
+++ b/crates/shirabe-php-rpc/php/stubs/Composer/Package/RootPackage.php
@@ -0,0 +1,71 @@
+<?php
+
+// Generated by scripts/plugin-stub-generator; do not edit by hand.
+// Proxy stub for Composer\Package\RootPackage: the public surface forwards to the Rust-side entity over RPC.
+
+namespace Composer\Package;
+
+class RootPackage extends CompletePackage implements RootPackageInterface
+{
+ public const DEFAULT_PRETTY_VERSION = '1.0.0+no-version-set';
+
+ public function getAliases(): array
+ {
+ return \ShirabeRpcRuntime::callRust($this->__rhandle, 'getAliases', []);
+ }
+
+ public function getMinimumStability(): string
+ {
+ return \ShirabeRpcRuntime::callRust($this->__rhandle, 'getMinimumStability', []);
+ }
+
+ public function getStabilityFlags(): array
+ {
+ return \ShirabeRpcRuntime::callRust($this->__rhandle, 'getStabilityFlags', []);
+ }
+
+ public function getReferences(): array
+ {
+ return \ShirabeRpcRuntime::callRust($this->__rhandle, 'getReferences', []);
+ }
+
+ public function getPreferStable(): bool
+ {
+ return \ShirabeRpcRuntime::callRust($this->__rhandle, 'getPreferStable', []);
+ }
+
+ public function getConfig(): array
+ {
+ return \ShirabeRpcRuntime::callRust($this->__rhandle, 'getConfig', []);
+ }
+
+ public function setStabilityFlags(array $stabilityFlags): void
+ {
+ \ShirabeRpcRuntime::callRust($this->__rhandle, 'setStabilityFlags', [$stabilityFlags]);
+ }
+
+ public function setMinimumStability(string $minimumStability): void
+ {
+ \ShirabeRpcRuntime::callRust($this->__rhandle, 'setMinimumStability', [$minimumStability]);
+ }
+
+ public function setPreferStable(bool $preferStable): void
+ {
+ \ShirabeRpcRuntime::callRust($this->__rhandle, 'setPreferStable', [$preferStable]);
+ }
+
+ public function setConfig(array $config): void
+ {
+ \ShirabeRpcRuntime::callRust($this->__rhandle, 'setConfig', [$config]);
+ }
+
+ public function setReferences(array $references): void
+ {
+ \ShirabeRpcRuntime::callRust($this->__rhandle, 'setReferences', [$references]);
+ }
+
+ public function setAliases(array $aliases): void
+ {
+ \ShirabeRpcRuntime::callRust($this->__rhandle, 'setAliases', [$aliases]);
+ }
+}