AttributeMetadata.php in Zircon Profile 8.0
Same filename and directory in other branches
Namespace
Symfony\Component\Serializer\MappingFile
vendor/symfony/serializer/Mapping/AttributeMetadata.phpView source
<?php
/*
* This file is part of the Symfony package.
*
* (c) Fabien Potencier <fabien@symfony.com>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Symfony\Component\Serializer\Mapping;
/**
* {@inheritdoc}
*
* @author Kévin Dunglas <dunglas@gmail.com>
*/
class AttributeMetadata implements AttributeMetadataInterface {
/**
* @var string
*
* @internal This property is public in order to reduce the size of the
* class' serialized representation. Do not access it. Use
* {@link getName()} instead.
*/
public $name;
/**
* @var array
*
* @internal This property is public in order to reduce the size of the
* class' serialized representation. Do not access it. Use
* {@link getGroups()} instead.
*/
public $groups = array();
/**
* Constructs a metadata for the given attribute.
*
* @param string $name
*/
public function __construct($name) {
$this->name = $name;
}
/**
* {@inheritdoc}
*/
public function getName() {
return $this->name;
}
/**
* {@inheritdoc}
*/
public function addGroup($group) {
if (!in_array($group, $this->groups)) {
$this->groups[] = $group;
}
}
/**
* {@inheritdoc}
*/
public function getGroups() {
return $this->groups;
}
/**
* {@inheritdoc}
*/
public function merge(AttributeMetadataInterface $attributeMetadata) {
foreach ($attributeMetadata
->getGroups() as $group) {
$this
->addGroup($group);
}
}
/**
* Returns the names of the properties that should be serialized.
*
* @return string[]
*/
public function __sleep() {
return array(
'name',
'groups',
);
}
}
Classes
Name | Description |
---|---|
AttributeMetadata | @author Kévin Dunglas <dunglas@gmail.com> |