diff options
Diffstat (limited to 'crates/shirabe-php-rpc/php/stubs/Composer')
| -rw-r--r-- | crates/shirabe-php-rpc/php/stubs/Composer/EventDispatcher/Event.php | 67 | ||||
| -rw-r--r-- | crates/shirabe-php-rpc/php/stubs/Composer/EventDispatcher/EventDispatcher.php | 92 |
2 files changed, 92 insertions, 67 deletions
diff --git a/crates/shirabe-php-rpc/php/stubs/Composer/EventDispatcher/Event.php b/crates/shirabe-php-rpc/php/stubs/Composer/EventDispatcher/Event.php deleted file mode 100644 index fea84c75..00000000 --- a/crates/shirabe-php-rpc/php/stubs/Composer/EventDispatcher/Event.php +++ /dev/null @@ -1,67 +0,0 @@ -<?php - -// Generated by scripts/plugin-stub-generator; do not edit by hand. -// Proxy stub for Composer\EventDispatcher\Event: the public surface forwards to the Rust-side entity over RPC. - -namespace Composer\EventDispatcher; - -class Event implements \ShirabeRustStub -{ - /** @var int */ - protected $__rhandle; - /** @var int */ - protected $__epoch; - - public function __construct(int $rhandle = 0, int $epoch = 0) - { - if (func_num_args() < 2) { - // Constructing the class from plugin code (a common idiom for e.g. `new BufferIO()`) - // is an open question of the plugin design; only proxy instantiation passes a - // Rust handle. Fail with a diagnosable message instead of an ArgumentCountError. - throw new \RuntimeException( - 'Shirabe does not support constructing ' . static::class . ' inside the plugin process yet' - ); - } - $this->__rhandle = $rhandle; - $this->__epoch = $epoch; - } - - public function __destruct() - { - \ShirabeRustObjectRegistry::release($this->__rhandle); - } - - public function __shirabeRustHandleDescriptor(): array - { - return [ - '__rhandle' => $this->__rhandle, - '__class' => static::class, - '__epoch' => $this->__epoch, - ]; - } - - public function getName(): string - { - return \ShirabeRpcRuntime::callRust($this->__rhandle, 'getName', []); - } - - public function getArguments(): array - { - return \ShirabeRpcRuntime::callRust($this->__rhandle, 'getArguments', []); - } - - public function getFlags(): array - { - return \ShirabeRpcRuntime::callRust($this->__rhandle, 'getFlags', []); - } - - public function isPropagationStopped(): bool - { - return \ShirabeRpcRuntime::callRust($this->__rhandle, 'isPropagationStopped', []); - } - - public function stopPropagation(): void - { - \ShirabeRpcRuntime::callRust($this->__rhandle, 'stopPropagation', []); - } -} diff --git a/crates/shirabe-php-rpc/php/stubs/Composer/EventDispatcher/EventDispatcher.php b/crates/shirabe-php-rpc/php/stubs/Composer/EventDispatcher/EventDispatcher.php new file mode 100644 index 00000000..c0651081 --- /dev/null +++ b/crates/shirabe-php-rpc/php/stubs/Composer/EventDispatcher/EventDispatcher.php @@ -0,0 +1,92 @@ +<?php + +// Generated by scripts/plugin-stub-generator; do not edit by hand. +// Proxy stub for Composer\EventDispatcher\EventDispatcher: the public surface forwards to the Rust-side entity over RPC. + +namespace Composer\EventDispatcher; + +use Composer\DependencyResolver\Transaction; +use Composer\DependencyResolver\Operation\OperationInterface; +use Composer\Repository\RepositoryInterface; + +class EventDispatcher implements \ShirabeRustStub +{ + /** @var int */ + protected $__rhandle; + /** @var int */ + protected $__epoch; + + public function __construct(int $rhandle = 0, int $epoch = 0) + { + if (func_num_args() < 2) { + // Constructing the class from plugin code (a common idiom for e.g. `new BufferIO()`) + // is an open question of the plugin design; only proxy instantiation passes a + // Rust handle. Fail with a diagnosable message instead of an ArgumentCountError. + throw new \RuntimeException( + 'Shirabe does not support constructing ' . static::class . ' inside the plugin process yet' + ); + } + $this->__rhandle = $rhandle; + $this->__epoch = $epoch; + } + + public function __destruct() + { + \ShirabeRustObjectRegistry::release($this->__rhandle); + } + + public function __shirabeRustHandleDescriptor(): array + { + return [ + '__rhandle' => $this->__rhandle, + '__class' => static::class, + '__epoch' => $this->__epoch, + ]; + } + + public function setRunScripts(bool $runScripts = true): self + { + \ShirabeRpcRuntime::callRust($this->__rhandle, 'setRunScripts', [$runScripts]); + return $this; + } + + public function dispatch(?string $eventName, ?Event $event = null): int + { + return \ShirabeRpcRuntime::callRust($this->__rhandle, 'dispatch', [$eventName, $event]); + } + + public function dispatchScript(string $eventName, bool $devMode = false, array $additionalArgs = [], array $flags = []): int + { + return \ShirabeRpcRuntime::callRust($this->__rhandle, 'dispatchScript', [$eventName, $devMode, $additionalArgs, $flags]); + } + + public function dispatchPackageEvent(string $eventName, bool $devMode, RepositoryInterface $localRepo, array $operations, OperationInterface $operation): int + { + return \ShirabeRpcRuntime::callRust($this->__rhandle, 'dispatchPackageEvent', [$eventName, $devMode, $localRepo, $operations, $operation]); + } + + public function dispatchInstallerEvent(string $eventName, bool $devMode, bool $executeOperations, Transaction $transaction): int + { + return \ShirabeRpcRuntime::callRust($this->__rhandle, 'dispatchInstallerEvent', [$eventName, $devMode, $executeOperations, $transaction]); + } + + public function addListener(string $eventName, $listener, int $priority = 0): void + { + \ShirabeRpcRuntime::callRust($this->__rhandle, 'addListener', [$eventName, $listener, $priority]); + } + + public function removeListener($listener): void + { + \ShirabeRpcRuntime::callRust($this->__rhandle, 'removeListener', [$listener]); + } + + public function addSubscriber(EventSubscriberInterface $subscriber): void + { + \ShirabeRpcRuntime::callRust($this->__rhandle, 'addSubscriber', [$subscriber]); + } + + public function hasEventListeners(Event $event): bool + { + return \ShirabeRpcRuntime::callRust($this->__rhandle, 'hasEventListeners', [$event]); + } +} |
