Same name and namespace in other branches
  1. 8.9.x core/lib/Drupal/Core/TypedData/DataDefinition.php \Drupal\Core\TypedData\DataDefinition::createFromDataType()
  2. 9 core/lib/Drupal/Core/TypedData/DataDefinition.php \Drupal\Core\TypedData\DataDefinition::createFromDataType()

Creates a new data definition object.

This method is typically used by \Drupal\Core\TypedData\TypedDataManager::createDataDefinition() to build a definition object for an arbitrary data type. When the definition class is known, it is recommended to directly use the static create() method on that class instead; e.g.:

$map_definition = \Drupal\Core\TypedData\MapDataDefinition::create();

Parameters

string $data_type: The data type, for which a data definition should be created.

Return value

static

Throws

\InvalidArgumentException If an unsupported data type gets passed to the class; e.g., 'string' to a definition class handling 'entity:* data types.

Overrides DataDefinitionInterface::createFromDataType

8 calls to DataDefinition::createFromDataType()
BaseFieldDefinitionTest::testFieldDefaultValue in core/tests/Drupal/Tests/Core/Entity/BaseFieldDefinitionTest.php
Tests field default value.
BaseFieldDefinitionTest::testFieldInitialValue in core/tests/Drupal/Tests/Core/Entity/BaseFieldDefinitionTest.php
Tests field initial value.
ImmutablePropertiesConstraintValidatorTest::testImmutablePropertyCannotBeChanged in core/tests/Drupal/KernelTests/Core/Entity/ImmutablePropertiesConstraintValidatorTest.php
Tests that changing a config entity's immutable property raises an error.
ImmutablePropertiesConstraintValidatorTest::testValidatedEntityMustHaveAnId in core/tests/Drupal/KernelTests/Core/Entity/ImmutablePropertiesConstraintValidatorTest.php
Tests that entities without an ID will raise an exception.
ImmutablePropertiesConstraintValidatorTest::testValidatorRejectsANonExistentProperty in core/tests/Drupal/KernelTests/Core/Entity/ImmutablePropertiesConstraintValidatorTest.php
Tests that the validator throws an exception for non-existent properties.

... See full list

5 methods override DataDefinition::createFromDataType()
DataReferenceDefinition::createFromDataType in core/lib/Drupal/Core/TypedData/DataReferenceDefinition.php
Creates a new data definition object.
EntityDataDefinition::createFromDataType in core/lib/Drupal/Core/Entity/TypedData/EntityDataDefinition.php
Creates a new data definition object.
FieldItemDataDefinition::createFromDataType in core/lib/Drupal/Core/Field/TypedData/FieldItemDataDefinition.php
Creates a new data definition object.
ListDataDefinition::createFromDataType in core/lib/Drupal/Core/TypedData/ListDataDefinition.php
Creates a new data definition object.
MapDataDefinition::createFromDataType in core/lib/Drupal/Core/TypedData/MapDataDefinition.php
Creates a new data definition object.

File

core/lib/Drupal/Core/TypedData/DataDefinition.php, line 36

Class

DataDefinition
A typed data definition class for defining data based on defined data types.

Namespace

Drupal\Core\TypedData

Code

public static function createFromDataType($type) {
  return self::create($type);
}