public FieldItemBase::__construct(DataDefinitionInterface $definition, $name = NULL, TypedDataInterface $parent = NULL)
Constructs a TypedData object given its definition and context.
@todo When \Drupal\Core\Config\TypedConfigManager has been fixed to use class-based definitions, type-hint $definition to DataDefinitionInterface. https://www.drupal.org/node/1928868
Parameters
\Drupal\Core\TypedData\DataDefinitionInterface $definition: The data definition.
string $name: (optional) The name of the created property, or NULL if it is the root of a typed data tree. Defaults to NULL.
\Drupal\Core\TypedData\TypedDataInterface $parent: (optional) The parent object of the data property, or NULL if it is the root of a typed data tree. Defaults to NULL.
Overrides TypedData::__construct
See also
\Drupal\Core\TypedData\TypedDataManager::create()
File
- core/lib/Drupal/Core/Field/FieldItemBase.php, line 46
Class
- FieldItemBase
- An entity field item.
Namespace
Drupal\Core\Field
Code
public function __construct(DataDefinitionInterface $definition, $name = NULL, TypedDataInterface $parent = NULL) { parent::__construct($definition, $name, $parent); // Initialize computed properties by default, such that they get cloned // with the whole item. foreach ($this->definition->getPropertyDefinitions() as $name => $definition) { if ($definition->isComputed()) { $this->properties[$name] = \Drupal::typedDataManager()->getPropertyInstance($this, $name); } } }
Please login to continue.