Server IP : 172.67.157.199 / Your IP : 3.15.31.223 [ Web Server : Apache System : Linux b70eb322-3aee-0c53-7c82-0db91281f2c6.secureserver.net 6.1.90-1.el9.elrepo.x86_64 #1 SMP PREEMPT_DYNAMIC Thu May 2 12:09:22 EDT 2024 x86_64 User : root ( 0) PHP Version : 8.0.30.2 Disable Function : NONE Domains : 0 Domains MySQL : ON | cURL : ON | WGET : ON | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/wp-content/plugins/defender-security/vendor/gettext/gettext/src/ |
Upload File : |
<?php declare(strict_types = 1); namespace Gettext; use ArrayIterator; use Countable; use IteratorAggregate; use JsonSerializable; /** * Class to manage the comments of a translation. */ class Comments implements JsonSerializable, Countable, IteratorAggregate { protected $comments = []; public static function __set_state(array $state): Comments { return new static(...$state['comments']); } public function __construct(string ...$comments) { if (!empty($comments)) { $this->add(...$comments); } } public function __debugInfo() { return $this->toArray(); } public function add(string ...$comments): self { foreach ($comments as $comment) { if (!in_array($comment, $this->comments)) { $this->comments[] = $comment; } } return $this; } public function delete(string ...$comments): self { foreach ($comments as $comment) { $key = array_search($comment, $this->comments); if (is_int($key)) { array_splice($this->comments, $key, 1); } } return $this; } public function jsonSerialize() { return $this->toArray(); } public function getIterator() { return new ArrayIterator($this->comments); } public function count(): int { return count($this->comments); } public function toArray(): array { return $this->comments; } public function mergeWith(Comments $comments): Comments { $merged = clone $this; $merged->add(...$comments->comments); return $merged; } }