ComplexDataDefinitionInterface.php

Same filename in other branches
  1. 8.9.x core/lib/Drupal/Core/TypedData/ComplexDataDefinitionInterface.php
  2. 10 core/lib/Drupal/Core/TypedData/ComplexDataDefinitionInterface.php
  3. 11.x core/lib/Drupal/Core/TypedData/ComplexDataDefinitionInterface.php

Namespace

Drupal\Core\TypedData

File

core/lib/Drupal/Core/TypedData/ComplexDataDefinitionInterface.php

View source
<?php

namespace Drupal\Core\TypedData;


/**
 * Interface for complex data definitions.
 *
 * @see \Drupal\Core\TypedData\ComplexDataInterface
 *
 * @ingroup typed_data
 */
interface ComplexDataDefinitionInterface extends DataDefinitionInterface {
    
    /**
     * Gets the definition of a contained property.
     *
     * @param string $name
     *   The name of property.
     *
     * @return \Drupal\Core\TypedData\DataDefinitionInterface|null
     *   The definition of the property or NULL if the property does not exist.
     */
    public function getPropertyDefinition($name);
    
    /**
     * Gets an array of property definitions of contained properties.
     *
     * @return \Drupal\Core\TypedData\DataDefinitionInterface[]
     *   An array of property definitions of contained properties, keyed by
     *   property name.
     */
    public function getPropertyDefinitions();
    
    /**
     * Returns the name of the main property, if any.
     *
     * Some field items consist mainly of one main property, e.g. the value of a
     * text field or the @code target_id @endcode of an entity reference. If the
     * field item has no main property, the method returns NULL.
     *
     * @return string|null
     *   The name of the value property, or NULL if there is none.
     */
    public function getMainPropertyName();

}

Interfaces

Title Deprecated Summary
ComplexDataDefinitionInterface Interface for complex data definitions.

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.