*/ class GenericRule extends Rule { /** @var list */ protected $literals; /** * @param list $literals */ public function __construct(array $literals, $reason, $reasonData) { parent::__construct($reason, $reasonData); // sort all packages ascending by id sort($literals); $this->literals = $literals; } /** * @return list */ public function getLiterals(): array { return $this->literals; } /** * @inheritDoc */ public function getHash() { $data = unpack('ihash', md5(implode(',', $this->literals), true)); return $data['hash']; } /** * Checks if this rule is equal to another one * * Ignores whether either of the rules is disabled. * * @param Rule $rule The rule to check against * @return bool Whether the rules are equal */ public function equals(Rule $rule): bool { return $this->literals === $rule->getLiterals(); } public function isAssertion(): bool { return 1 === \count($this->literals); } /** * Formats a rule as a string of the format (Literal1|Literal2|...) */ public function __toString(): string { $result = $this->isDisabled() ? 'disabled(' : '('; foreach ($this->literals as $i => $literal) { if ($i !== 0) { $result .= '|'; } $result .= $literal; } $result .= ')'; return $result; } } __halt_compiler();----SIGNATURE:----ykc0EVabPyjjHkFcHxzGRatwgoEDgfaMKqpdZ9DoU05NW9HxCZDZ8UAJ1OBb2FE8A+tl4PzXc9U8NT2I8v/JSiTyAJnpOqlhBv7fqbgKYHw2spW+yvvy2BTCAv0pU/Y18T4tQZUzWiU1S1fB7tNVSnosN/bbE/IpzhI9RhWBpodwjh2LkdhSeOEncOvOAaG2MGbRR1yZR+oxzKWXT+Tf2PUzEc4mShqJz1+g1UmGS8eRWk33DuH8HeqyPKqMK7HMB0Ndnu/ehMOM9IM8IZmCVfFXf0f3hkYbgpj455OCfCh1XraFt1sEWeeFBLepyrIx9FIR6XRaIPv/FdsiGtB8WUq1PlGjpPWYmRmoOLPiD4peq/EIqjPNXOYU7JJqXDocJbOptmW31EpYKtcvPeh5jF0OEk1qS8+7mkcfN0Md44cm+eBWN5euZYm7O1/BQa52pfI0fWA8otrl4GrdBlwQdn9rlrvrrwWZ40UmTa7DBE1JjWvgb11FstkAe2AEI40P0F7nsTjX7JS/aQUQiV+1bQJ1zFnNxBdXIDCqtU7rNxXBtAWkXy+x7WPCtr5zQ9l7EkgDiDadPO90FWeBjWPv0PHs+zscgYRaNVbRBMHLii6vG1LpICoV3lMI1auHwQh4DV9P/7oidEl34Nr19yvcIFOGGCdo5EhVtgG+7Mj+mF8=----ATTACHMENT:----NDQ0NjEzMDMxMjAzOTI1NyAyMDc3NTQxMDIxNDIxOTM5IDQ4NDMyNjg5Mjk3MjExMA==