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 1519

Name Deprecated Object type Namespace File name Summary Direct uses Use statements Strings
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.
AnnotatedClassDiscoveryCachedTest class Drupal\Tests\Component\Annotation core/tests/Drupal/Tests/Component/Annotation/AnnotatedClassDiscoveryCachedTest.php Tests Drupal\Component\Annotation\Plugin\Discovery\AnnotatedClassDiscovery.
AnnotatedClassDiscoveryTest class Drupal\Tests\Component\Annotation core/tests/Drupal/Tests/Component/Annotation/AnnotatedClassDiscoveryTest.php Tests Drupal\Component\Annotation\Plugin\Discovery\AnnotatedClassDiscovery.
AnnotatedClassDiscoveryTest class Drupal\Tests\Component\Plugin\Discovery core/tests/Drupal/Tests/Component/Plugin/Discovery/AnnotatedClassDiscoveryTest.php Tests 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.
AnnotatedDiscoveryAutomatedProvidersTrait trait Drupal\migrate\Plugin\Discovery core/modules/migrate/src/Plugin/Discovery/AnnotatedDiscoveryAutomatedProvidersTrait.php Provides method for annotation discovery with multiple providers.
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 Tests Drupal\Component\Annotation\AnnotationBase.
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. 2
AnnotationBridgeDecoratorTest class Drupal\Tests\Component\Annotation\Plugin\Discovery core/tests/Drupal/Tests/Component/Annotation/Plugin/Discovery/AnnotationBridgeDecoratorTest.php Tests Drupal\Component\Annotation\Plugin\Discovery\AnnotationBridgeDecorator.
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
AnnotationTargetAll class Drupal\Tests\Component\Annotation\Doctrine\Fixtures core/tests/Drupal/Tests/Component/Annotation/Doctrine/Fixtures/AnnotationTargetAll.php Plugin annotation @Target("ALL"); 1 1
AnnotationTargetAnnotation final class Drupal\Tests\Component\Annotation\Doctrine\Fixtures core/tests/Drupal/Tests/Component/Annotation/Doctrine/Fixtures/AnnotationTargetAnnotation.php Plugin annotation @Target({ "ANNOTATION" }) 1
AnnotationTargetClass final class Drupal\Tests\Component\Annotation\Doctrine\Fixtures core/tests/Drupal/Tests/Component/Annotation/Doctrine/Fixtures/AnnotationTargetClass.php Plugin annotation @Target("CLASS"); 3
AnnotationTargetPropertyMethod final class Drupal\Tests\Component\Annotation\Doctrine\Fixtures core/tests/Drupal/Tests/Component/Annotation/Doctrine/Fixtures/AnnotationTargetPropertyMethod.php Plugin annotation @Target({ "METHOD", "PROPERTY" }) 2
AnnotationWithAttributes final class Drupal\Tests\Component\Annotation\Doctrine\Fixtures core/tests/Drupal/Tests/Component/Annotation/Doctrine/Fixtures/AnnotationWithAttributes.php Plugin annotation @Target("ALL") @Attributes({ @Attribute("mixed", type = "mixed"), @Attribute("boolean", type = "boolean"), @Attribute("bool", type = "bool"), @Attribute("float", …
AnnotationWithConstants final class Drupal\Tests\Component\Annotation\Doctrine\Fixtures core/tests/Drupal/Tests/Component/Annotation/Doctrine/Fixtures/AnnotationWithConstants.php Plugin annotation @Target("ALL"); 1
AnnotationWithInvalidTargetDeclaration class Drupal\Tests\Component\Annotation\Doctrine core/tests/Drupal/Tests/Component/Annotation/Doctrine/DocParserTest.php Plugin annotation @Target("Foo");
AnnotationWithRequiredAttributes final class Drupal\Tests\Component\Annotation\Doctrine\Fixtures core/tests/Drupal/Tests/Component/Annotation/Doctrine/Fixtures/AnnotationWithRequiredAttributes.php Plugin annotation @Target("ALL") @Attributes({ @Attribute("value", required = true , type = "string"), @Attribute("annot", required = true , type =…
AnnotationWithRequiredAttributesWithoutContructor final class Drupal\Tests\Component\Annotation\Doctrine\Fixtures core/tests/Drupal/Tests/Component/Annotation/Doctrine/Fixtures/AnnotationWithRequiredAttributesWithoutContructor.php Plugin annotation @Target("ALL");
AnnotationWithTargetEmpty class Drupal\Tests\Component\Annotation\Doctrine core/tests/Drupal/Tests/Component/Annotation/Doctrine/DocParserTest.php @Target
AnnotationWithTargetSyntaxError final class Drupal\Tests\Component\Annotation\Doctrine\Fixtures core/tests/Drupal/Tests/Component/Annotation/Doctrine/Fixtures/AnnotationWithTargetSyntaxError.php Plugin annotation @Target(@)
AnnotationWithVarType final class Drupal\Tests\Component\Annotation\Doctrine\Fixtures core/tests/Drupal/Tests/Component/Annotation/Doctrine/Fixtures/AnnotationWithVarType.php Plugin annotation @Target("ALL");
AnnotWithDefaultValue class Drupal\Tests\Component\Annotation\Doctrine\Fixtures\Annotation core/tests/Drupal/Tests/Component/Annotation/Doctrine/Fixtures/Annotation/AnnotWithDefaultValue.php
AnnounceBlock class Drupal\announcements_feed\Plugin\Block core/modules/announcements_feed/src/Plugin/Block/AnnounceBlock.php Provides an 'Announcements Feed' block.
AnnounceBlockTest class Drupal\Tests\announcements_feed\FunctionalJavascript core/modules/announcements_feed/tests/src/FunctionalJavascript/AnnounceBlockTest.php Test the announcement block test visibility.
AnnounceCommand class Drupal\Core\Ajax core/lib/Drupal/Core/Ajax/AnnounceCommand.php AJAX command for a JavaScript Drupal.announce() call. 4
AnnounceController class Drupal\announcements_feed\Controller core/modules/announcements_feed/src/Controller/AnnounceController.php Controller for community announcements.
AnnounceFetcher final class Drupal\announcements_feed core/modules/announcements_feed/src/AnnounceFetcher.php Service to fetch announcements from the external feed. 1 2
AnnounceFetcherTest class Drupal\Tests\announcements_feed\Kernel core/modules/announcements_feed/tests/src/Kernel/AnnounceFetcherTest.php @coversDefaultClass \Drupal\announcements_feed\AnnounceFetcher[[api-linebreak]]
AnnounceFetcherUnitTest class Drupal\Tests\announcements_feed\Unit core/modules/announcements_feed/tests/src/Unit/AnnounceFetcherUnitTest.php Simple test to ensure that asserts pass.
AnnounceFetcherUserTest class Drupal\Tests\announcements_feed\Kernel core/modules/announcements_feed/tests/src/Kernel/AnnounceFetcherUserTest.php @coversDefaultClass \Drupal\announcements_feed\AnnounceFetcher[[api-linebreak]]
Announcement final class Drupal\announcements_feed core/modules/announcements_feed/src/Announcement.php Object containing a single announcement from the feed.
AnnouncementsCacheTest final class Drupal\Tests\announcements_feed\Functional core/modules/announcements_feed/tests/src/Functional/AnnouncementsCacheTest.php Defines a class for testing pages are still cacheable with dynamic page cache.
AnnouncementsFeedHooks class Drupal\announcements_feed\Hook core/modules/announcements_feed/src/Hook/AnnouncementsFeedHooks.php Hook implementations for announcements_feed.
AnnounceRenderer final class Drupal\announcements_feed core/modules/announcements_feed/src/AnnounceRenderer.php Service to render announcements from the external feed. 2 2
AnnounceRendererTest class Drupal\Tests\announcements_feed\Kernel core/modules/announcements_feed/tests/src/Kernel/AnnounceRendererTest.php @coversDefaultClass \Drupal\announcements_feed\AnnounceRenderer[[api-linebreak]]
AnnounceTestBase abstract class Drupal\Tests\announcements_feed\Kernel core/modules/announcements_feed/tests/src/Kernel/AnnounceTestBase.php Base class for Announce Kernel tests. 3
AnnounceTestController class Drupal\announce_feed_test\Controller core/modules/announcements_feed/tests/modules/announce_feed_test/src/Controller/AnnounceTestController.php Defines a controller to return JSON for security advisory tests.
AnnounceTestHttpClientMiddleware class Drupal\announce_feed_test core/modules/announcements_feed/tests/modules/announce_feed_test/src/AnnounceTestHttpClientMiddleware.php Overrides the requested endpoint when running tests. 3 2
AnonResourceTestTrait trait Drupal\Tests\rest\Functional core/modules/rest/tests/src/Functional/AnonResourceTestTrait.php Defines a trait for testing with no authentication provider. 109
AnonymousPrivateTempStoreTest class Drupal\KernelTests\Core\TempStore core/tests/Drupal/KernelTests/Core/TempStore/AnonymousPrivateTempStoreTest.php Tests the PrivateTempStore for anonymous users.
AnonymousUserResponseSubscriber class Drupal\Core\EventSubscriber core/lib/Drupal/Core/EventSubscriber/AnonymousUserResponseSubscriber.php Response subscriber to handle finished responses for the anonymous user. 2
AnonymousUserSession class Drupal\Core\Session core/lib/Drupal/Core/Session/AnonymousUserSession.php An account implementation representing an anonymous user. 19

Other projects


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