__rhandle, $this->__epoch] = \ShirabeRpcRuntime::callRust(0, '__shirabeConstruct', [static::class, [$name, $composer, $io, $devMode, $args, $flags]]); \ShirabeRustObjectRegistry::adopt($this->__rhandle, $this); } public function getComposer(): Composer { return \ShirabeRpcRuntime::callRust($this->__rhandle, 'getComposer', []); } public function getIO(): IOInterface { return \ShirabeRpcRuntime::callRust($this->__rhandle, 'getIO', []); } public function isDevMode(): bool { return \ShirabeRpcRuntime::callRust($this->__rhandle, 'isDevMode', []); } public function getOriginatingEvent(): ?BaseEvent { return \ShirabeRpcRuntime::callRust($this->__rhandle, 'getOriginatingEvent', []); } public function setOriginatingEvent(BaseEvent $event): self { \ShirabeRpcRuntime::callRust($this->__rhandle, 'setOriginatingEvent', [$event]); return $this; } }