Classes, traits, and interfaces - 11.x - drupal

Primary tabs

Introduction to classes

A lot of the PHP code in Drupal is object oriented (OO), making use of PHP classes, interfaces, and traits. See the Objected-oriented programming conventions for more information.

See also

Objected-oriented programming conventions

File

core/core.api.php, line 1518

Name Deprecated Object type Namespace File name Summary Direct uses Use statements Strings
AliasPrefixList class Drupal\path_alias core/modules/path_alias/src/AliasPrefixList.php Cache a list of valid alias prefixes. 1 1 2
AliasPrefixListInterface interface Drupal\path_alias core/modules/path_alias/src/AliasPrefixListInterface.php Cache a list of valid alias prefixes. 2
AliasRepository class Drupal\path_alias core/modules/path_alias/src/AliasRepository.php Provides the default path alias lookup operations. 1 1 2
AliasRepositoryInterface interface Drupal\path_alias core/modules/path_alias/src/AliasRepositoryInterface.php Provides an interface for path alias lookup operations. 1 1
AliasTest class Drupal\Tests\path_alias\Kernel core/modules/path_alias/tests/src/Kernel/AliasTest.php Tests path alias CRUD and lookup functionality.
AliasWhitelist

in drupal:11.1.0 and is removed from drupal:12.0.0. Use \Drupal\path_alias\AliasPrefixList instead.

class Drupal\path_alias core/modules/path_alias/src/AliasWhitelist.php Cache a list of valid alias prefixes. 2
AliasWhitelistInterface

in drupal:11.1.0 and is removed from drupal:12.0.0. Use \Drupal\path_alias\AliasPrefixListInterface instead.

interface Drupal\path_alias core/modules/path_alias/src/AliasWhitelistInterface.php Cache a list of valid alias prefixes.
Alignment class Drupal\ckeditor5\Plugin\CKEditor5Plugin core/modules/ckeditor5/src/Plugin/CKEditor5Plugin/Alignment.php CKEditor 5 Alignment plugin. 1 1
AlignmentPluginTest class Drupal\Tests\ckeditor5\Unit core/modules/ckeditor5/tests/src/Unit/AlignmentPluginTest.php @coversDefaultClass \Drupal\ckeditor5\Plugin\CKEditor5Plugin\Alignment @group ckeditor5 @internal
AllExceptHostEntity class Drupal\entity_reference_test\Plugin\EntityReferenceSelection core/modules/system/tests/modules/entity_reference_test/src/Plugin/EntityReferenceSelection/AllExceptHostEntity.php Allows access to all entities except for the host entity.
AllowedPackages class Drupal\Composer\Plugin\Scaffold composer/Plugin/Scaffold/AllowedPackages.php Determine recursively which packages have been allowed to scaffold files.
AllowedScaffoldPackagesValidator final class Drupal\package_manager\Validator core/modules/package_manager/src/Validator/AllowedScaffoldPackagesValidator.php Validates the list of packages that are allowed to scaffold files.
AllowedScaffoldPackagesValidatorTest class Drupal\Tests\package_manager\Kernel core/modules/package_manager/tests/src/Kernel/AllowedScaffoldPackagesValidatorTest.php @covers \Drupal\package_manager\Validator\AllowedScaffoldPackagesValidator @group package_manager @internal
AllowedValuesConstraint class Drupal\Core\Validation\Plugin\Validation\Constraint core/lib/Drupal/Core/Validation/Plugin/Validation/Constraint/AllowedValuesConstraint.php Checks for the value being allowed. 1
AllowedValuesConstraintValidator class Drupal\Core\Validation\Plugin\Validation\Constraint core/lib/Drupal/Core/Validation/Plugin/Validation/Constraint/AllowedValuesConstraintValidator.php Validates the AllowedValues constraint.
AllowedValuesConstraintValidatorTest class Drupal\KernelTests\Core\TypedData core/tests/Drupal/KernelTests/Core/TypedData/AllowedValuesConstraintValidatorTest.php Tests AllowedValues validation constraint with both valid and invalid values.
AllowListConfigStorage final class Drupal\Core\Recipe core/lib/Drupal/Core/Recipe/AllowListConfigStorage.php A read-only storage wrapper that only allows access to certain config names.
AllowToolbarPath class Drupal\toolbar\PageCache core/modules/toolbar/src/PageCache/AllowToolbarPath.php Cache policy for the toolbar page cache service. 1 2
AllowToolbarPathTest class Drupal\Tests\toolbar\Unit\PageCache core/modules/toolbar/tests/src/Unit/PageCache/AllowToolbarPathTest.php @coversDefaultClass \Drupal\toolbar\PageCache\AllowToolbarPath @group toolbar
AlreadyInstalledException class Drupal\Core\Installer\Exception core/lib/Drupal/Core/Installer/Exception/AlreadyInstalledException.php Exception thrown if Drupal is installed already. 1
AlterableInterface interface Drupal\Core\Database\Query core/lib/Drupal/Core/Database/Query/AlterableInterface.php Interface for a query that can be manipulated via an alter hook. 2 14
AlterContentMiddleware final class Drupal\http_middleware_test\StackMiddleware core/modules/system/tests/modules/http_middleware_test/src/StackMiddleware/AlterContentMiddleware.php Alters the response before content length is calculated. 2
AlterTest class Drupal\Tests\system\Functional\Form core/modules/system/tests/src/Functional/Form/AlterTest.php Tests hook_form_alter() and hook_form_FORM_ID_alter().
AlterTest class Drupal\Tests\system\Kernel\Common core/modules/system/tests/src/Kernel/Common/AlterTest.php Tests alteration of arguments passed to \Drupal::moduleHandler->alter().
AlterTest class Drupal\KernelTests\Core\Database core/tests/Drupal/KernelTests/Core/Database/AlterTest.php Tests the hook_query_alter capabilities of the Select builder.
AlwaysAddsAccessPolicy class Drupal\Tests\Core\Session core/tests/Drupal/Tests/Core/Session/AccessPolicyProcessorTest.php
AlwaysAltersAccessPolicy class Drupal\Tests\Core\Session core/tests/Drupal/Tests/Core/Session/AccessPolicyProcessorTest.php
AmbiguousBundleClassException class Drupal\Core\Entity\Exception core/lib/Drupal/Core/Entity/Exception/AmbiguousBundleClassException.php Exception thrown if a bundle class is defined for multiple bundles. 3
AmbiguousEntityClassException class Drupal\Core\Entity\Exception core/lib/Drupal/Core/Entity/Exception/AmbiguousEntityClassException.php Exception thrown if multiple entity types exist for an entity class. 1 2
Analyze class Drupal\views_ui\Form\Ajax core/modules/views_ui/src/Form/Ajax/Analyze.php Displays analysis information for a view.
Analyzer class Drupal\views core/modules/views/src/Analyzer.php View analyzer plugin manager. 3 2
AnalyzeTest class Drupal\Tests\views_ui\Functional core/modules/views_ui/tests/src/Functional/AnalyzeTest.php Tests the views analyze system.
AnnotatedClassDiscovery class Drupal\Core\Plugin\Discovery core/lib/Drupal/Core/Plugin/Discovery/AnnotatedClassDiscovery.php Defines a discovery mechanism to find annotated plugins in PSR-4 namespaces. 1 8
AnnotatedClassDiscovery class Drupal\Component\Annotation\Plugin\Discovery core/lib/Drupal/Component/Annotation/Plugin/Discovery/AnnotatedClassDiscovery.php Defines a discovery mechanism to find annotated plugins in PSR-4 namespaces. 1 4
AnnotatedClassDiscoveryAutomatedProviders class Drupal\migrate\Plugin\Discovery core/modules/migrate/src/Plugin/Discovery/AnnotatedClassDiscoveryAutomatedProviders.php Determines providers based on a class's and its parent's namespaces. 1
AnnotatedClassDiscoveryCachedTest class Drupal\Tests\Component\Annotation core/tests/Drupal/Tests/Component/Annotation/AnnotatedClassDiscoveryCachedTest.php @coversDefaultClass \Drupal\Component\Annotation\Plugin\Discovery\AnnotatedClassDiscovery @group Annotation @runTestsInSeparateProcesses
AnnotatedClassDiscoveryTest class Drupal\Tests\Component\Annotation core/tests/Drupal/Tests/Component/Annotation/AnnotatedClassDiscoveryTest.php @coversDefaultClass \Drupal\Component\Annotation\Plugin\Discovery\AnnotatedClassDiscovery @group Annotation @runTestsInSeparateProcesses
AnnotatedClassDiscoveryTest class Drupal\Tests\Component\Plugin\Discovery core/tests/Drupal/Tests/Component/Plugin/Discovery/AnnotatedClassDiscoveryTest.php @coversDefaultClass \Drupal\Component\Annotation\Plugin\Discovery\AnnotatedClassDiscovery
AnnotatedClassDiscoveryTest class Drupal\KernelTests\Core\Plugin\Discovery core/tests/Drupal/KernelTests/Core/Plugin/Discovery/AnnotatedClassDiscoveryTest.php Tests that plugins are correctly discovered using annotated classes.
AnnotationBase abstract class Drupal\Component\Annotation core/lib/Drupal/Component/Annotation/AnnotationBase.php Provides a base class for classed annotations. 5 4
AnnotationBaseStub class Drupal\Tests\Component\Annotation core/tests/Drupal/Tests/Component/Annotation/AnnotationBaseTest.php
AnnotationBaseTest class Drupal\Tests\Component\Annotation core/tests/Drupal/Tests/Component/Annotation/AnnotationBaseTest.php @coversDefaultClass \Drupal\Component\Annotation\AnnotationBase @group Annotation
AnnotationBridgeDecorator class Drupal\Component\Annotation\Plugin\Discovery core/lib/Drupal/Component/Annotation/Plugin/Discovery/AnnotationBridgeDecorator.php Ensures that all definitions are run through the annotation process. 1
AnnotationBridgeDecoratorTest class Drupal\Tests\Component\Annotation\Plugin\Discovery core/tests/Drupal/Tests/Component/Annotation/Plugin/Discovery/AnnotationBridgeDecoratorTest.php @coversDefaultClass \Drupal\Component\Annotation\Plugin\Discovery\AnnotationBridgeDecorator @group Plugin
AnnotationEnum final class Drupal\Tests\Component\Annotation\Doctrine\Fixtures core/tests/Drupal/Tests/Component/Annotation/Doctrine/Fixtures/AnnotationEnum.php Plugin annotation @Target("ALL");
AnnotationEnumInvalid final class Drupal\Tests\Component\Annotation\Doctrine\Fixtures core/tests/Drupal/Tests/Component/Annotation/Doctrine/Fixtures/AnnotationEnumInvalid.php Plugin annotation @Target("ALL");
AnnotationEnumLiteral final class Drupal\Tests\Component\Annotation\Doctrine\Fixtures core/tests/Drupal/Tests/Component/Annotation/Doctrine/Fixtures/AnnotationEnumLiteral.php Plugin annotation @Target("ALL"); 1
AnnotationEnumLiteralInvalid final class Drupal\Tests\Component\Annotation\Doctrine\Fixtures core/tests/Drupal/Tests/Component/Annotation/Doctrine/Fixtures/AnnotationEnumLiteralInvalid.php Plugin annotation @Target("ALL");
AnnotationExtendsAnnotationTargetAll class Drupal\Tests\Component\Annotation\Doctrine core/tests/Drupal/Tests/Component/Annotation/Doctrine/DocParserTest.php
AnnotationInterface interface Drupal\Component\Annotation core/lib/Drupal/Component/Annotation/AnnotationInterface.php Defines a common interface for classed annotations. 3 5

Other projects


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