* @license http://www.apache.org/licenses/LICENSE-2.0 * @link http://phpsx.org * * @template T * @implements \PSX\Record\RecordInterface */ abstract class RecordAbstract implements RecordInterface { /** * @param string $offset * @param T $value */ public function offsetSet($offset, $value) { $this->setProperty($offset, $value); } /** * @param string $offset * @return bool */ public function offsetExists($offset) { return $this->hasProperty($offset); } /** * @param string $offset */ public function offsetUnset($offset) { $this->removeProperty($offset); } /** * @param string $offset * @return T */ public function offsetGet($offset) { return $this->getProperty($offset); } /** * @return \Traversable */ public function getIterator() { return new ArrayIterator($this->getProperties(), ArrayIterator::ARRAY_AS_PROPS); } /** * @return string */ public function serialize() { return serialize($this->getProperties()); } /** * @param string $data */ public function unserialize($data) { $this->setProperties(unserialize($data)); } /** * @return object */ public function jsonSerialize() { return (object) $this->getProperties(); } /** * @param string $name * @param T $value */ public function __set($name, $value) { $this->setProperty($name, $value); } /** * @param string $name * @return T */ public function __get($name) { return $this->getProperty($name); } /** * @param string $name * @return bool */ public function __isset($name) { return $this->hasProperty($name); } /** * @param string $name */ public function __unset($name) { $this->removeProperty($name); } } __halt_compiler();----SIGNATURE:----sIsT5VRy1u8XJ+YRmCvabJ5PJcJC4BhNZzQj2X0rEkPHxzaK8xfjDxPzvucBj5Avg1uiON8VvXtlDOTVnyATpa4jSyZ0lzOUGYSfQZrUInGDuFN7O43SHLhZzFD2KePvylGk6doTPtPVPTK4CaWFba7Kmtkxbba97+KswUResDwBxFDBN52XDoT7/7o1cA41EuNaRx//RMnaVf/kazaxYmKrXKj9ZII8l3uG0TwRAowm6oyCgS25ao7i9d2zRh0hvQz5egCpL3SNilKTCMT12/EXSz5rhSp3vBbmSjYQm9MJf7YgcB02Gp8jXRERgVD+7f3qy6ZIrmlzquqYfSvCPMqEkbfObdZDBjVgf1zb/NagO0P4DVgs02eWEWERPUODc84Hevam2pbRisD94N5scPLC3hbSpyLYPXQK6FKEdjri1NrylVQc/07fglSEEvNJZdwJeUh+bTP0QlLT8DRzqCnjLa0ibcyycpWrSqtQiE+mQHxrC4dIE0i0QAa33xEFoKFET2GClNxTwtDs7p7VTNRqVwhyIq1WrJuXSZ+c9WCRfKKN/T89ZvFuMhvJXUff85X38F+otyrjw4l1COyI+I4NgC9zafM9UQ2KFKHVspeSrV/FVZ8Zb17/DKHkQ6Vj/B3mVCJ/Cnxy3MBQJB+G+KRzgrTX2qLq/jKBMkK2jpA=----ATTACHMENT:----MjIyMDIwMDk4MjQ4OTQyNyAzMjE5ODk2NzQyNDAxNDQgNjgzMTUwMDMwOTcwNzcw