* @license http://www.apache.org/licenses/LICENSE-2.0 * @link http://phpsx.org * * @template T * @implements \ArrayAccess * @implements \IteratorAggregate */ interface RecordInterface extends ArrayAccess, Serializable, JsonSerializable, IteratorAggregate { /** * Returns all properties which are set * * @return array */ public function getProperties(): array; /** * Sets the available properties * * @param array $properties * @return void */ public function setProperties(array $properties): void; /** * Returns a property * * @param string $name * @return T|null */ public function getProperty(string $name); /** * Sets a property * * @param string $name * @param T $value * @return void */ public function setProperty(string $name, $value): void; /** * Removes a property * * @param string $name * @return void */ public function removeProperty(string $name): void; /** * Returns whether a property exist * * @param string $name * @return boolean */ public function hasProperty(string $name): bool; /** * Returns whether the record is empty * * @return boolean */ public function isEmpty(): bool; /** * Iterates through all entries and adds them to the record * * @param iterable $record */ public function merge(iterable $record): void; /** * Filters specific entries out of the map * * @param \Closure $filter */ public function filter(\Closure $filter): void; /** * Applies a callback on each value of the map * * @param \Closure $filter */ public function map(\Closure $filter): void; } __halt_compiler();----SIGNATURE:----u/KdUr4e//fW5Iu1O6vsW/nqy+ZTTWzro6t5QKBkzFEdzuRyIkvkuZXGIKJOHRuxFtTicmKdNLlRtjAijrh3cZTQ2ii+FWZconzFxyI5NJYp2OANhUiKxFVO7rVfKVMqjUgDo3CL92XNQuJfbuxKPAv2++sW5s0jv+nkcKve8sV5OEnHdn8Ics5LGS9F7EXWrqZ3s1CaN5qLAdwBlrS2oQjwuqN2bevfu6xH/vHoiq753F6zjt4HCAvi/7NurWf34Ft4d2ObRWMi/8xQHRNDVfm5Cn0AWHB9W9qZyjXKF6S5yVb1tKroocUJW5+fmnGNSxI26wGGBGcy4CV8IYDuYCbEGwFOkseCJkovxh3c/QX5gLRZcUHMDQrMdmBu2R68tq7nGXxEcL3kmXJRdUr/sP2o8L9wR0tz+bK5CidMJieaYPd0DwjrpHYy0xDiQdsVvprifDVwscZZst0N1ur+DfxqrL1Z8XPGpF7lnxmBzvmqKpikeqQdNrBQzEMj37/N7mEgNNdNuL6crsFhFeHVMaeDKfA6jl6SnSGN4+ZXRwgbTf1+JgNn2pmSFWPAuIGRbpGV7thDCbHPmE8fzgH8dXkz0EPzR8o1QbcqHSV8oDyhhU4X7i1WxivK5AuK+kN7Plr07CzGZBCiKoKG6DkGtrWtigl/EPXQ8uqb/sOh0f4=----ATTACHMENT:----MjM4NTYxNzE3NzIxODA0NSA5OTQ5OTE4NjgzMzU2NTgzIDYzNzIyNjg3MTA1OTU1NDQ=