* * @phpstan-import-type Record from \Monolog\Logger */ trait ProcessableHandlerTrait { /** * @var callable[] * @phpstan-var array */ protected $processors = []; /** * {@inheritDoc} */ public function pushProcessor(callable $callback): HandlerInterface { array_unshift($this->processors, $callback); return $this; } /** * {@inheritDoc} */ public function popProcessor(): callable { if (!$this->processors) { throw new \LogicException('You tried to pop from an empty processor stack.'); } return array_shift($this->processors); } /** * Processes a record. * * @phpstan-param Record $record * @phpstan-return Record */ protected function processRecord(array $record): array { foreach ($this->processors as $processor) { $record = $processor($record); } return $record; } protected function resetProcessors(): void { foreach ($this->processors as $processor) { if ($processor instanceof ResettableInterface) { $processor->reset(); } } } } __halt_compiler();----SIGNATURE:----YGH4/wBqeO27K3yxRMh59l9ujDZ9uxpHswpGyFKJiRkpQFflJEH+gIdFnOrJxyQ4Bk3577eewnR9YvNqdE4/RNdorp39gQMFzGk2WhMn5KtocqfSpDPYcsQQAsufFYIfNS5Gy3GgM8j2T7fjThwPS3qSbMgO4aRtWgG2VIiCAMyAzuQjINPam6e1TlMuonlyX29SCgXYTiacHwmJtnTLq+iQSKCpbLPp0LzdvDd20PGYT/c3ob+07gPnUt86gMwkJ7a67qlEVfJUHJIrn81cGyWmWQPgXb1nDAAPwaQI74X2fiQhI3cqIR5GhO9XC13ORKsKBAv+Y/RzmgA2qJI2YSmuh1J88ZAhCsItO8II17mv7QnIhaKmdPb0cg76FLUUu3RZNL1rEdhMC6u/IlRbY68kjLC318uV8SLLHn46+AF9N4vybBA8q+JCXF1Ca030pPSUHIW0G/XNpuWcY+hj5qKoO5PgR895olegmrRFJ0nIHxTvw8CA07xJ3Dgx+0MoiLL6EiUnNnjmPKuQwiKINcz5jJsrx71fx0hxa8S28jRLp/4IkqnETdQPXU+/fCMQrgTT0r++fFOxcBwg2b5VtUPSZRkIg80jboeTt0ACypH70PB4fiazP9wPAwYyRP5Ot5xCPEokrjY+Clmmy3bmqgZA+XRo0GkIb2GHPz/C1zw=----ATTACHMENT:----MTA1MTYwNjYyMTk2NTU2NSAxNTM4NjUzNzEwOTA0NTcxIDY2NjU5NzA3NjU1ODE4MjA=