Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. FieldConfigBase.php

function FieldConfigBase::getItemDefinition

Overrides ListDataDefinitionInterface::getItemDefinition

File

core/lib/Drupal/Core/Field/FieldConfigBase.php, line 553

Class

FieldConfigBase
Base class for configurable field definitions.

Namespace

Drupal\Core\Field

Code

public function getItemDefinition() {
    if (!isset($this->itemDefinition)) {
        $this->itemDefinition = FieldItemDataDefinition::create($this)->setSettings($this->getSettings());
        // Add any custom property constraints, overwriting as required.
        $item_constraints = $this->itemDefinition
            ->getConstraint('ComplexData') ?: [];
        foreach ($this->propertyConstraints as $name => $constraints) {
            if (isset($item_constraints[$name])) {
                $item_constraints[$name] = $constraints + $item_constraints[$name];
            }
            else {
                $item_constraints[$name] = $constraints;
            }
            $this->itemDefinition
                ->addConstraint('ComplexData', $item_constraints);
        }
    }
    return $this->itemDefinition;
}

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal