diff --git a/core/lib/Drupal/Component/Plugin/ContextAwarePluginInterface.php b/core/lib/Drupal/Component/Plugin/ContextAwarePluginInterface.php
index 90ee661201b0f0cba09ef96d9f7639b59cb8b28b..5c04b5a2c5c820fe584175895d9fc80bd2e5181d 100644
--- a/core/lib/Drupal/Component/Plugin/ContextAwarePluginInterface.php
+++ b/core/lib/Drupal/Component/Plugin/ContextAwarePluginInterface.php
@@ -103,7 +103,7 @@ public function setContext($name, ContextInterface $context);
    *   The value to set the context to. The value has to validate against the
    *   provided context definition.
    *
-   * @return \Drupal\Component\Plugin\ContextAwarePluginInterface
+   * @return $this
    *   A context aware plugin object for chaining.
    *
    * @throws \Drupal\Component\Plugin\Exception\PluginException
diff --git a/core/lib/Drupal/Core/Ajax/AjaxResponse.php b/core/lib/Drupal/Core/Ajax/AjaxResponse.php
index 4d1c123348edea6f523dec32c6a604c88398321c..189a7b29ae5a233630d8e4fd5dae94de900a3217 100644
--- a/core/lib/Drupal/Core/Ajax/AjaxResponse.php
+++ b/core/lib/Drupal/Core/Ajax/AjaxResponse.php
@@ -32,7 +32,7 @@ class AjaxResponse extends JsonResponse implements AttachmentsInterface {
    *   A boolean which determines whether the new command should be executed
    *   before previously added commands. Defaults to FALSE.
    *
-   * @return AjaxResponse
+   * @return $this
    *   The current AjaxResponse.
    */
   public function addCommand(CommandInterface $command, $prepend = FALSE) {
diff --git a/core/lib/Drupal/Core/Archiver/ArchiverInterface.php b/core/lib/Drupal/Core/Archiver/ArchiverInterface.php
index 2e635364bc891a186f86821e093b41a234cfdca0..979b93ac80bd7f452cd89bf402b9367ba4455b99 100644
--- a/core/lib/Drupal/Core/Archiver/ArchiverInterface.php
+++ b/core/lib/Drupal/Core/Archiver/ArchiverInterface.php
@@ -18,7 +18,7 @@ interface ArchiverInterface {
    *   The full system path of the file or directory to add. Only local files
    *   and directories are supported.
    *
-   * @return \Drupal\Core\Archiver\ArchiverInterface
+   * @return $this
    *   The called object.
    */
   public function add($file_path);
@@ -29,7 +29,7 @@ public function add($file_path);
    * @param string $path
    *   The file name relative to the root of the archive to remove.
    *
-   * @return \Drupal\Core\Archiver\ArchiverInterface
+   * @return $this
    *   The called object.
    */
   public function remove($path);
@@ -44,7 +44,7 @@ public function remove($path);
    *   relative to the root of the archive. If not specified, all files
    *   in the archive will be extracted.
    *
-   * @return \Drupal\Core\Archiver\ArchiverInterface
+   * @return $this
    *   The called object.
    */
   public function extract($path, array $files = []);
diff --git a/core/lib/Drupal/Core/Asset/AttachedAssetsInterface.php b/core/lib/Drupal/Core/Asset/AttachedAssetsInterface.php
index f191f9d20f50d35e2e31cab74bd9b789b8e6473f..c100264ad309a67049e46cbad736ff832eafc5eb 100644
--- a/core/lib/Drupal/Core/Asset/AttachedAssetsInterface.php
+++ b/core/lib/Drupal/Core/Asset/AttachedAssetsInterface.php
@@ -21,7 +21,7 @@ interface AttachedAssetsInterface {
    * @param array $render_array
    *   A render array.
    *
-   * @return \Drupal\Core\Asset\AttachedAssetsInterface
+   * @return static
    *
    * @throws \LogicException
    */
diff --git a/core/lib/Drupal/Core/Cache/BackendChain.php b/core/lib/Drupal/Core/Cache/BackendChain.php
index 8e02656eed5842e5eaa62e5cf5101432aa074a75..97bbcaffd683c308cae72389c6b6b41ed0d4165c 100644
--- a/core/lib/Drupal/Core/Cache/BackendChain.php
+++ b/core/lib/Drupal/Core/Cache/BackendChain.php
@@ -50,7 +50,7 @@ public function __construct($bin = NULL) {
    * @param CacheBackendInterface $backend
    *   The cache backend to be appended to the cache chain.
    *
-   * @return \Drupal\Core\Cache\BackendChain
+   * @return $this
    *   The called object.
    */
   public function appendBackend(CacheBackendInterface $backend) {
@@ -65,7 +65,7 @@ public function appendBackend(CacheBackendInterface $backend) {
    * @param CacheBackendInterface $backend
    *   The backend to be prepended to the cache chain.
    *
-   * @return \Drupal\Core\Cache\BackendChain
+   * @return $this
    *   The called object.
    */
   public function prependBackend(CacheBackendInterface $backend) {
diff --git a/core/lib/Drupal/Core/Config/Config.php b/core/lib/Drupal/Core/Config/Config.php
index f7e0ede695d15db0ff0c1252653e6f93a78a4bca..0d66e8464ff7e36c033bb9d98bb3b83f20072573 100644
--- a/core/lib/Drupal/Core/Config/Config.php
+++ b/core/lib/Drupal/Core/Config/Config.php
@@ -117,7 +117,7 @@ public function setData(array $data) {
    * @param array $data
    *   The overridden values of the configuration data.
    *
-   * @return \Drupal\Core\Config\Config
+   * @return $this
    *   The configuration object.
    */
   public function setSettingsOverride(array $data) {
@@ -132,7 +132,7 @@ public function setSettingsOverride(array $data) {
    * @param array $data
    *   The overridden values of the configuration data.
    *
-   * @return \Drupal\Core\Config\Config
+   * @return $this
    *   The configuration object.
    */
   public function setModuleOverride(array $data) {
@@ -149,7 +149,7 @@ public function setModuleOverride(array $data) {
    * provided by modules. Precedence or different module overrides is
    * determined by the priority of the config.factory.override tagged services.
    *
-   * @return \Drupal\Core\Config\Config
+   * @return $this
    *   The configuration object.
    */
   protected function setOverriddenData() {
@@ -169,7 +169,7 @@ protected function setOverriddenData() {
    * This method should be called after the original data or the overridden data
    * has been changed.
    *
-   * @return \Drupal\Core\Config\Config
+   * @return $this
    *   The configuration object.
    */
   protected function resetOverriddenData() {
@@ -236,7 +236,7 @@ public function save($has_trusted_data = FALSE) {
   /**
    * Deletes the configuration object.
    *
-   * @return \Drupal\Core\Config\Config
+   * @return $this
    *   The configuration object.
    */
   public function delete() {
diff --git a/core/lib/Drupal/Core/Config/ConfigImporter.php b/core/lib/Drupal/Core/Config/ConfigImporter.php
index 03ad2b2d422f1c2196b47a3b6007b54ded481562..c1ce52d047b2a1f01c55d74cf4638649c8f6e111 100644
--- a/core/lib/Drupal/Core/Config/ConfigImporter.php
+++ b/core/lib/Drupal/Core/Config/ConfigImporter.php
@@ -248,7 +248,7 @@ public function getStorageComparer() {
   /**
    * Resets the storage comparer and processed list.
    *
-   * @return \Drupal\Core\Config\ConfigImporter
+   * @return $this
    *   The ConfigImporter instance.
    */
   public function reset() {
@@ -475,7 +475,7 @@ protected function getUnprocessedExtensions($type) {
   /**
    * Imports the changelist to the target storage.
    *
-   * @return \Drupal\Core\Config\ConfigImporter
+   * @return $this
    *   The ConfigImporter instance.
    *
    * @throws \Drupal\Core\Config\ConfigException
diff --git a/core/lib/Drupal/Core/Config/PreExistingConfigException.php b/core/lib/Drupal/Core/Config/PreExistingConfigException.php
index a71604e16009344a1f5cc75dbbde7f5c3f720814..ada95f6572c0a901674011457f1467871e495113 100644
--- a/core/lib/Drupal/Core/Config/PreExistingConfigException.php
+++ b/core/lib/Drupal/Core/Config/PreExistingConfigException.php
@@ -53,7 +53,7 @@ public function getExtension() {
    *   A list of configuration objects that already exist in active
    *   configuration, keyed by config collection.
    *
-   * @return \Drupal\Core\Config\PreExistingConfigException
+   * @return $this
    */
   public static function create($extension, array $config_objects) {
     $message = new FormattableMarkup('Configuration objects (@config_names) provided by @extension already exist in active configuration',
diff --git a/core/lib/Drupal/Core/Config/StorageComparerInterface.php b/core/lib/Drupal/Core/Config/StorageComparerInterface.php
index 803e092e8980b7d9f8816b82a4158fedf56cc095..ee61c51a4d4ca451b2be0aab6b47f38c18102c20 100644
--- a/core/lib/Drupal/Core/Config/StorageComparerInterface.php
+++ b/core/lib/Drupal/Core/Config/StorageComparerInterface.php
@@ -57,7 +57,7 @@ public function getChangelist($op = NULL, $collection = StorageInterface::DEFAUL
   /**
    * Recalculates the differences.
    *
-   * @return \Drupal\Core\Config\StorageComparerInterface
+   * @return $this
    *   An object which implements the StorageComparerInterface.
    */
   public function reset();
diff --git a/core/lib/Drupal/Core/Config/StorageInterface.php b/core/lib/Drupal/Core/Config/StorageInterface.php
index 18a7126334943ae504b497a482261e7f1dc420c8..fe6857a10626a25560f23b83543eb0498d60e204 100644
--- a/core/lib/Drupal/Core/Config/StorageInterface.php
+++ b/core/lib/Drupal/Core/Config/StorageInterface.php
@@ -173,7 +173,7 @@ public function deleteAll($prefix = '');
    *   configuration in a way that allows retrieval of configuration for a
    *   particular collection.
    *
-   * @return \Drupal\Core\Config\StorageInterface
+   * @return $this
    *   A new instance of the storage backend with the collection set.
    */
   public function createCollection($collection);
diff --git a/core/lib/Drupal/Core/Database/Query/AlterableInterface.php b/core/lib/Drupal/Core/Database/Query/AlterableInterface.php
index d0e3f3461755e9157f90547d7e0df95b18e167e5..a77c26acd374b201d6309d0eb519b2011f75be23 100644
--- a/core/lib/Drupal/Core/Database/Query/AlterableInterface.php
+++ b/core/lib/Drupal/Core/Database/Query/AlterableInterface.php
@@ -19,7 +19,7 @@ interface AlterableInterface {
    * @param $tag
    *   The tag to add.
    *
-   * @return \Drupal\Core\Database\Query\AlterableInterface
+   * @return $this
    *   The called object.
    */
   public function addTag($tag);
@@ -76,7 +76,7 @@ public function hasAnyTag();
    * @param $object
    *   The additional data to add to the query. May be any valid PHP variable.
    *
-   * @return \Drupal\Core\Database\Query\AlterableInterface
+   * @return $this
    *   The called object.
    */
   public function addMetaData($key, $object);
diff --git a/core/lib/Drupal/Core/Database/Query/ConditionInterface.php b/core/lib/Drupal/Core/Database/Query/ConditionInterface.php
index fe5140c2af42b32fa70d1b6bbcecbb551f140172..99a273198953c05fe8c8360d57c30d7a15abfd59 100644
--- a/core/lib/Drupal/Core/Database/Query/ConditionInterface.php
+++ b/core/lib/Drupal/Core/Database/Query/ConditionInterface.php
@@ -58,7 +58,7 @@ interface ConditionInterface {
    *   - The operators (NOT) BETWEEN, (NOT) IN, (NOT) EXISTS, (NOT) LIKE.
    *   Other operators (e.g. LIKE, BINARY) may or may not work. Defaults to =.
    *
-   * @return \Drupal\Core\Database\Query\ConditionInterface
+   * @return $this
    *   The called object.
    *
    * @throws \Drupal\Core\Database\InvalidQueryException
@@ -83,7 +83,7 @@ public function condition($field, $value = NULL, $operator = '=');
    * @param array $args
    *   An associative array of arguments keyed by the named placeholders.
    *
-   * @return \Drupal\Core\Database\Query\ConditionInterface
+   * @return $this
    *   The called object.
    */
   public function where($snippet, $args = []);
@@ -94,7 +94,7 @@ public function where($snippet, $args = []);
    * @param string|\Drupal\Core\Database\Query\SelectInterface $field
    *   The name of the field or a subquery to check.
    *
-   * @return \Drupal\Core\Database\Query\ConditionInterface
+   * @return $this
    *   The called object.
    */
   public function isNull($field);
@@ -105,7 +105,7 @@ public function isNull($field);
    * @param string|\Drupal\Core\Database\Query\SelectInterface $field
    *   The name of the field or a subquery to check.
    *
-   * @return \Drupal\Core\Database\Query\ConditionInterface
+   * @return $this
    *   The called object.
    */
   public function isNotNull($field);
@@ -116,7 +116,7 @@ public function isNotNull($field);
    * @param \Drupal\Core\Database\Query\SelectInterface $select
    *   The subquery that must contain results.
    *
-   * @return \Drupal\Core\Database\Query\ConditionInterface
+   * @return $this
    *   The called object.
    */
   public function exists(SelectInterface $select);
@@ -127,7 +127,7 @@ public function exists(SelectInterface $select);
    * @param \Drupal\Core\Database\Query\SelectInterface $select
    *   The subquery that must not contain results.
    *
-   * @return \Drupal\Core\Database\Query\ConditionInterface
+   * @return $this
    *   The called object.
    */
   public function notExists(SelectInterface $select);
diff --git a/core/lib/Drupal/Core/Database/Query/Insert.php b/core/lib/Drupal/Core/Database/Query/Insert.php
index 3af2d2ac6ff831bbff8f1f00c189e904cbe3f16b..011d4423d1e53cc2c6c2ec2a405f8f696f37c4b7 100644
--- a/core/lib/Drupal/Core/Database/Query/Insert.php
+++ b/core/lib/Drupal/Core/Database/Query/Insert.php
@@ -44,7 +44,7 @@ public function __construct($connection, $table, array $options = []) {
    * @param \Drupal\Core\Database\Query\SelectInterface $query
    *   The query to fetch the rows that should be inserted.
    *
-   * @return \Drupal\Core\Database\Query\Insert
+   * @return $this
    *   The called object.
    */
   public function from(SelectInterface $query) {
diff --git a/core/lib/Drupal/Core/Database/Query/Merge.php b/core/lib/Drupal/Core/Database/Query/Merge.php
index 4afe5de2ebb202805eee26d5311b679de5fd7c3b..6d895324727605ec3cebcc07c06612b6b389f7f4 100644
--- a/core/lib/Drupal/Core/Database/Query/Merge.php
+++ b/core/lib/Drupal/Core/Database/Query/Merge.php
@@ -148,7 +148,7 @@ public function __construct(Connection $connection, $table, array $options = [])
    *   The table name or the subquery to be used. Use a Select query object to
    *   pass in a subquery.
    *
-   * @return \Drupal\Core\Database\Query\Merge
+   * @return $this
    *   The called object.
    */
   protected function conditionTable($table) {
@@ -163,7 +163,7 @@ protected function conditionTable($table) {
    *   An associative array of fields to write into the database. The array keys
    *   are the field names and the values are the values to which to set them.
    *
-   * @return \Drupal\Core\Database\Query\Merge
+   * @return $this
    *   The called object.
    */
   public function updateFields(array $fields) {
@@ -188,7 +188,7 @@ public function updateFields(array $fields) {
    *   If specified, this is an array of key/value pairs for named placeholders
    *   corresponding to the expression.
    *
-   * @return \Drupal\Core\Database\Query\Merge
+   * @return $this
    *   The called object.
    */
   public function expression($field, $expression, array $arguments = NULL) {
@@ -213,7 +213,7 @@ public function expression($field, $expression, array $arguments = NULL) {
    *   An array of fields to insert into the database. The values must be
    *   specified in the same order as the $fields array.
    *
-   * @return \Drupal\Core\Database\Query\Merge
+   * @return $this
    *   The called object.
    */
   public function insertFields(array $fields, array $values = []) {
@@ -240,7 +240,7 @@ public function insertFields(array $fields, array $values = []) {
    *   An array of values for which to use the default values
    *   specified in the table definition.
    *
-   * @return \Drupal\Core\Database\Query\Merge
+   * @return $this
    *   The called object.
    */
   public function useDefaults(array $fields) {
@@ -266,7 +266,7 @@ public function useDefaults(array $fields) {
    *   An array of values to set into the database. The values must be
    *   specified in the same order as the $fields array.
    *
-   * @return \Drupal\Core\Database\Query\Merge
+   * @return $this
    *   The called object.
    */
   public function fields(array $fields, array $values = []) {
diff --git a/core/lib/Drupal/Core/Database/Query/SelectInterface.php b/core/lib/Drupal/Core/Database/Query/SelectInterface.php
index 4b4c8e8ae4670dcd79ab68dbf4e8f5347f698f96..4db9452ffb1118f0c52fc71c6ef0f114cb4106a4 100644
--- a/core/lib/Drupal/Core/Database/Query/SelectInterface.php
+++ b/core/lib/Drupal/Core/Database/Query/SelectInterface.php
@@ -169,7 +169,7 @@ public function getArguments(PlaceholderInterface $queryPlaceholder = NULL);
    *
    * @param $distinct
    *   TRUE to flag this query DISTINCT, FALSE to disable it.
-   * @return \Drupal\Core\Database\Query\SelectInterface
+   * @return $this
    *   The called object.
    */
   public function distinct($distinct = TRUE);
@@ -211,7 +211,7 @@ public function addField($table_alias, $field, $alias = NULL);
    *   An indexed array of fields present in the specified table that should be
    *   included in this query. If not specified, $table_alias.* will be generated
    *   without any aliases.
-   * @return \Drupal\Core\Database\Query\SelectInterface
+   * @return $this
    *   The called object.
    */
   public function fields($table_alias, array $fields = []);
@@ -411,7 +411,7 @@ public function addJoin($type, $table, $alias = NULL, $condition = NULL, $argume
    * @param $direction
    *   The direction to sort. Legal values are "ASC" and "DESC". Any other value
    *   will be converted to "ASC".
-   * @return \Drupal\Core\Database\Query\SelectInterface
+   * @return $this
    *   The called object.
    */
   public function orderBy($field, $direction = 'ASC');
@@ -433,7 +433,7 @@ public function orderBy($field, $direction = 'ASC');
    *
    * for an example of such an alternate sorting mechanism.
    *
-   * @return \Drupal\Core\Database\Query\SelectInterface
+   * @return $this
    *   The called object
    */
   public function orderRandom();
@@ -449,7 +449,7 @@ public function orderRandom();
    *   range directives that are set.
    * @param $length
    *   The number of records to return from the result set.
-   * @return \Drupal\Core\Database\Query\SelectInterface
+   * @return $this
    *   The called object.
    */
   public function range($start = NULL, $length = NULL);
@@ -474,7 +474,7 @@ public function range($start = NULL, $length = NULL);
    * @param $type
    *   The type of UNION to add to the query. Defaults to plain
    *   UNION.
-   * @return \Drupal\Core\Database\Query\SelectInterface
+   * @return $this
    *   The called object.
    */
   public function union(SelectInterface $query, $type = '');
@@ -484,7 +484,7 @@ public function union(SelectInterface $query, $type = '');
    *
    * @param $field
    *   The field on which to group. This should be the field as aliased.
-   * @return \Drupal\Core\Database\Query\SelectInterface
+   * @return $this
    *   The called object.
    */
   public function groupBy($field);
diff --git a/core/lib/Drupal/Core/Database/Query/Update.php b/core/lib/Drupal/Core/Database/Query/Update.php
index ba0661c7a08b2479cbd62d564f071b50a26fa566..5de5d682ec3f541bef007d7df710cd60817e21c2 100644
--- a/core/lib/Drupal/Core/Database/Query/Update.php
+++ b/core/lib/Drupal/Core/Database/Query/Update.php
@@ -75,7 +75,7 @@ public function __construct(Connection $connection, $table, array $options = [])
    *   An associative array of fields to write into the database. The array keys
    *   are the field names and the values are the values to which to set them.
    *
-   * @return \Drupal\Core\Database\Query\Update
+   * @return $this
    *   The called object.
    */
   public function fields(array $fields) {
@@ -98,7 +98,7 @@ public function fields(array $fields) {
    *   If specified, this is an array of key/value pairs for named placeholders
    *   corresponding to the expression.
    *
-   * @return \Drupal\Core\Database\Query\Update
+   * @return $this
    *   The called object.
    */
   public function expression($field, $expression, array $arguments = NULL) {
diff --git a/core/lib/Drupal/Core/Entity/Query/ConditionAggregateInterface.php b/core/lib/Drupal/Core/Entity/Query/ConditionAggregateInterface.php
index 383f41e4b716533a669edc432e4b630184ab3784..c7480ed913ccab5eaa01c058b4c2d08f5065621d 100644
--- a/core/lib/Drupal/Core/Entity/Query/ConditionAggregateInterface.php
+++ b/core/lib/Drupal/Core/Entity/Query/ConditionAggregateInterface.php
@@ -24,7 +24,7 @@ public function getConjunction();
    * @param string $operator
    * @param string $langcode
    *
-   * @return \Drupal\Core\Entity\Query\ConditionAggregateInterface
+   * @return $this
    *   The called object.
    * @see \Drupal\Core\Entity\Query\QueryInterface::condition()
    */
diff --git a/core/lib/Drupal/Core/Entity/Query/ConditionInterface.php b/core/lib/Drupal/Core/Entity/Query/ConditionInterface.php
index 7c98c3466357d573041473031220d731b75693ae..7b5f513f0fded7d29f5cd368df912a60626b0b54 100644
--- a/core/lib/Drupal/Core/Entity/Query/ConditionInterface.php
+++ b/core/lib/Drupal/Core/Entity/Query/ConditionInterface.php
@@ -30,7 +30,9 @@ public function count();
    * @param mixed $value
    * @param string $operator
    * @param string $langcode
-   * @return ConditionInterface
+   *
+   * @return $this
+   *
    * @see \Drupal\Core\Entity\Query\QueryInterface::condition()
    */
   public function condition($field, $value = NULL, $operator = NULL, $langcode = NULL);
@@ -40,7 +42,9 @@ public function condition($field, $value = NULL, $operator = NULL, $langcode = N
    *
    * @param string $field
    * @param string $langcode
-   * @return ConditionInterface
+   *
+   * @return $this
+   *
    * @see \Drupal\Core\Entity\Query\QueryInterface::exists()
    */
   public function exists($field, $langcode = NULL);
@@ -50,7 +54,9 @@ public function exists($field, $langcode = NULL);
    *
    * @param string $field
    * @param string $langcode
-   * @return ConditionInterface
+   *
+   * @return $this
+   *
    * @see \Drupal\Core\Entity\Query\QueryInterface::notExists()
    */
   public function notExists($field, $langcode = NULL);
diff --git a/core/lib/Drupal/Core/Entity/Query/QueryAggregateInterface.php b/core/lib/Drupal/Core/Entity/Query/QueryAggregateInterface.php
index 3c94ba7c78b0d483c63f218d5fcfc14ad8b534bb..590c7d985d31da60e46ca205c2886e5c48db47fe 100644
--- a/core/lib/Drupal/Core/Entity/Query/QueryAggregateInterface.php
+++ b/core/lib/Drupal/Core/Entity/Query/QueryAggregateInterface.php
@@ -23,7 +23,7 @@ interface QueryAggregateInterface extends QueryInterface {
    * @param string $alias
    *   (optional) The key that will be used on the resultset.
    *
-   * @return \Drupal\Core\Entity\Query\QueryAggregateInterface
+   * @return $this
    *   The called object.
    */
   public function aggregate($field, $function, $langcode = NULL, &$alias = NULL);
@@ -34,7 +34,7 @@ public function aggregate($field, $function, $langcode = NULL, &$alias = NULL);
    * @param string $field
    *   The name of the field to group by.
    *
-   * @return \Drupal\Core\Entity\Query\QueryAggregateInterface
+   * @return $this
    *   The called object.
    */
   public function groupBy($field);
@@ -60,7 +60,7 @@ public function groupBy($field);
    * @param string $langcode
    *   (optional) The language code.
    *
-   * @return \Drupal\Core\Entity\Query\QueryAggregateInterface
+   * @return $this
    *   The called object.
    *
    * @see \Drupal\Core\Entity\Query\QueryInterface::condition()
@@ -77,7 +77,7 @@ public function conditionAggregate($field, $function = NULL, $value = NULL, $ope
    * @param $langcode
    *   (optional) The language code.
    *
-   * @return \Drupal\Core\Entity\Query\QueryAggregateInterface
+   * @return $this
    *   The called object.
    */
   public function existsAggregate($field, $function, $langcode = NULL);
@@ -92,7 +92,7 @@ public function existsAggregate($field, $function, $langcode = NULL);
    * @param string $langcode
    *   (optional) The language code.
    *
-   * @return \Drupal\Core\Entity\Query\QueryAggregateInterface
+   * @return $this
    *   The called object.
    */
   public function notExistsAggregate($field, $function, $langcode = NULL);
@@ -124,7 +124,7 @@ public function conditionAggregateGroupFactory($conjunction = 'AND');
    * @param string $langcode
    *   (optional) The language code.
    *
-   * @return \Drupal\Core\Entity\Query\QueryAggregateInterface
+   * @return $this
    *   The called object.
    */
   public function sortAggregate($field, $function, $direction = 'ASC', $langcode = NULL);
diff --git a/core/lib/Drupal/Core/Entity/Query/QueryInterface.php b/core/lib/Drupal/Core/Entity/Query/QueryInterface.php
index d4b0608e80753774681b84ced30eb326db6c9752..1d5ed5dbe7a624743b8f6bc1da922ce3c5a1348b 100644
--- a/core/lib/Drupal/Core/Entity/Query/QueryInterface.php
+++ b/core/lib/Drupal/Core/Entity/Query/QueryInterface.php
@@ -94,7 +94,7 @@ public function getEntityTypeId();
    *   and another does not they are not presumed to apply to the same
    *   translation.
    *
-   * @return \Drupal\Core\Entity\Query\QueryInterface
+   * @return $this
    * @see \Drupal\Core\Entity\Query\andConditionGroup
    * @see \Drupal\Core\Entity\Query\orConditionGroup
    */
@@ -107,7 +107,7 @@ public function condition($field, $value = NULL, $operator = NULL, $langcode = N
    *   Name of a field.
    * @param $langcode
    *   Language code (optional).
-   * @return \Drupal\Core\Entity\Query\QueryInterface
+   * @return $this
    */
   public function exists($field, $langcode = NULL);
 
@@ -118,7 +118,7 @@ public function exists($field, $langcode = NULL);
    *   Name of a field.
    * @param $langcode
    *   Language code (optional).
-   * @return \Drupal\Core\Entity\Query\QueryInterface
+   * @return $this
    */
   public function notExists($field, $langcode = NULL);
 
@@ -132,7 +132,7 @@ public function notExists($field, $langcode = NULL);
    *   An optional integer to distinguish between multiple pagers on one page.
    *   If not provided, one is automatically calculated.
    *
-   * @return \Drupal\Core\Entity\Query\QueryInterface
+   * @return $this
    *   The called object.
    */
   public function pager($limit = 10, $element = NULL);
@@ -140,7 +140,7 @@ public function pager($limit = 10, $element = NULL);
   /**
    * @param null $start
    * @param null $length
-   * @return \Drupal\Core\Entity\Query\QueryInterface
+   * @return $this
    *   The called object.
    */
   public function range($start = NULL, $length = NULL);
@@ -151,7 +151,7 @@ public function range($start = NULL, $length = NULL);
    * @param string $direction
    * @param $langcode
    *   Language code (optional).
-   * @return \Drupal\Core\Entity\Query\QueryInterface
+   * @return $this
    *   The called object.
    */
   public function sort($field, $direction = 'ASC', $langcode = NULL);
@@ -161,7 +161,7 @@ public function sort($field, $direction = 'ASC', $langcode = NULL);
    *
    * For count queries, execute() returns the number entities found.
    *
-   * @return \Drupal\Core\Entity\Query\QueryInterface
+   * @return $this
    *   The called object.
    */
   public function count();
@@ -175,13 +175,13 @@ public function count();
    *   specify what to sort on. This can be an entity or a field as described
    *   in condition().
    *
-   * @return \Drupal\Core\Entity\Query\QueryInterface
+   * @return $this
    *   The called object.
    */
   public function tableSort(&$headers);
 
   /**
-   * @return \Drupal\Core\Entity\Query\QueryInterface
+   * @return $this
    *   The called object.
    */
   public function accessCheck($access_check = TRUE);
diff --git a/core/lib/Drupal/Core/Entity/Query/Sql/Query.php b/core/lib/Drupal/Core/Entity/Query/Sql/Query.php
index cd357c1c2acf07e95efd4c36b35a519dba5bdb70..78a4a971911636be7423115633e6dd8cc9984bdd 100644
--- a/core/lib/Drupal/Core/Entity/Query/Sql/Query.php
+++ b/core/lib/Drupal/Core/Entity/Query/Sql/Query.php
@@ -86,7 +86,7 @@ public function execute() {
   /**
    * Prepares the basic query with proper metadata/tags and base fields.
    *
-   * @return \Drupal\Core\Entity\Query\Sql\Query
+   * @return $this
    *   Returns the called object.
    *
    * @throws \Drupal\Core\Entity\Query\QueryException
@@ -165,7 +165,7 @@ protected function prepare() {
   /**
    * Compiles the conditions.
    *
-   * @return \Drupal\Core\Entity\Query\Sql\Query
+   * @return $this
    *   Returns the called object.
    */
   protected function compile() {
@@ -176,7 +176,7 @@ protected function compile() {
   /**
    * Adds the sort to the build query.
    *
-   * @return \Drupal\Core\Entity\Query\Sql\Query
+   * @return $this
    *   Returns the called object.
    */
   protected function addSort() {
@@ -234,7 +234,7 @@ protected function addSort() {
   /**
    * Finish the query by adding fields, GROUP BY and range.
    *
-   * @return \Drupal\Core\Entity\Query\Sql\Query
+   * @return $this
    *   Returns the called object.
    */
   protected function finish() {
diff --git a/core/lib/Drupal/Core/Entity/Query/Sql/QueryAggregate.php b/core/lib/Drupal/Core/Entity/Query/Sql/QueryAggregate.php
index f865cf76ef8138d8446bc8c0d45683752c3aa602..3e263d83815997ee806ab79f4c1d3b64a2abfe86 100644
--- a/core/lib/Drupal/Core/Entity/Query/Sql/QueryAggregate.php
+++ b/core/lib/Drupal/Core/Entity/Query/Sql/QueryAggregate.php
@@ -68,7 +68,7 @@ public function notExistsAggregate($field, $function, $langcode = NULL) {
   /**
    * Adds the aggregations to the query.
    *
-   * @return \Drupal\Core\Entity\Query\Sql\QueryAggregate
+   * @return $this
    *   Returns the called object.
    */
   protected function addAggregate() {
@@ -84,7 +84,7 @@ protected function addAggregate() {
   /**
    * Builds the aggregation conditions part of the query.
    *
-   * @return \Drupal\Core\Entity\Query\Sql\QueryAggregate
+   * @return $this
    *   Returns the called object.
    */
   protected function compileAggregate() {
@@ -95,7 +95,7 @@ protected function compileAggregate() {
   /**
    * Adds the groupby values to the actual query.
    *
-   * @return \Drupal\Core\Entity\Query\Sql\QueryAggregate
+   * @return $this
    *   Returns the called object.
    */
   protected function addGroupBy() {
@@ -113,7 +113,7 @@ protected function addGroupBy() {
   /**
    * Builds the aggregation sort part of the query.
    *
-   * @return \Drupal\Core\Entity\Query\Sql\QueryAggregate
+   * @return $this
    *   Returns the called object.
    */
   protected function addSortAggregate() {
diff --git a/core/lib/Drupal/Core/Executable/ExecutablePluginBase.php b/core/lib/Drupal/Core/Executable/ExecutablePluginBase.php
index 547724a50f6ff6ba313c7861356748f0db946fee..088bd3735bf0e87874196132d81df339a755b70d 100644
--- a/core/lib/Drupal/Core/Executable/ExecutablePluginBase.php
+++ b/core/lib/Drupal/Core/Executable/ExecutablePluginBase.php
@@ -72,7 +72,7 @@ public function getConfig() {
    *   https://www.drupal.org/node/1764380.
    * @todo This does not set a value in \Drupal::config(), so the name is confusing.
    *
-   * @return \Drupal\Core\Executable\ExecutablePluginBase
+   * @return $this
    *   The executable object for chaining.
    *
    * @throws \Drupal\Component\Plugin\Exception\PluginException
diff --git a/core/lib/Drupal/Core/Form/EnforcedResponse.php b/core/lib/Drupal/Core/Form/EnforcedResponse.php
index 46dfdca6f1cc3a4a77e9517f82eb3782aad14c65..e70c4a195f2721395f9073a8158cb265b41a4b79 100644
--- a/core/lib/Drupal/Core/Form/EnforcedResponse.php
+++ b/core/lib/Drupal/Core/Form/EnforcedResponse.php
@@ -37,7 +37,7 @@ class EnforcedResponse extends Response {
    * @param \Exception $e
    *   The exception where the enforced response is to be extracted from.
    *
-   * @return \Drupal\Core\Form\EnforcedResponse|null
+   * @return static|null
    *   The enforced response or NULL if the exception chain does not contain a
    *   \Drupal\Core\Form\EnforcedResponseException exception.
    */
diff --git a/core/lib/Drupal/Core/ImageToolkit/ImageToolkitInterface.php b/core/lib/Drupal/Core/ImageToolkit/ImageToolkitInterface.php
index 51867f4c3ff3b4bd426b184ff099f4c6592669cf..0f6e2184e2c2e2413758cfb2592757315ea8a235 100644
--- a/core/lib/Drupal/Core/ImageToolkit/ImageToolkitInterface.php
+++ b/core/lib/Drupal/Core/ImageToolkit/ImageToolkitInterface.php
@@ -52,7 +52,7 @@ interface ImageToolkitInterface extends ContainerFactoryPluginInterface, PluginI
    * @param string $source
    *   The source path of the image file.
    *
-   * @return \Drupal\Core\ImageToolkit\ImageToolkitInterface
+   * @return $this
    *   An instance of the current toolkit object.
    *
    * @throws \BadMethodCallException
diff --git a/core/lib/Drupal/Core/Language/LanguageManagerInterface.php b/core/lib/Drupal/Core/Language/LanguageManagerInterface.php
index eaefd18a276c2bc7876eb5c7ec4cdf17de036bd3..624b5b40239c77a14e3e64e9287c66372e1ce7cf 100644
--- a/core/lib/Drupal/Core/Language/LanguageManagerInterface.php
+++ b/core/lib/Drupal/Core/Language/LanguageManagerInterface.php
@@ -58,7 +58,7 @@ public function getCurrentLanguage($type = LanguageInterface::TYPE_INTERFACE);
    *   LanguageInterface::TYPE_INTERFACE, or NULL to reset all language types.
    *   Defaults to NULL.
    *
-   * @return \Drupal\Core\Language\LanguageManagerInterface
+   * @return $this
    *   The language manager that has been reset.
    */
   public function reset($type = NULL);
diff --git a/core/lib/Drupal/Core/Menu/LocalTaskInterface.php b/core/lib/Drupal/Core/Menu/LocalTaskInterface.php
index 7fb301edd4148697b1685c13811d00483db40e02..31e0fd77d098bea8fb7e753ca90078e8bc1e033e 100644
--- a/core/lib/Drupal/Core/Menu/LocalTaskInterface.php
+++ b/core/lib/Drupal/Core/Menu/LocalTaskInterface.php
@@ -70,7 +70,7 @@ public function getOptions(RouteMatchInterface $route_match);
    * @param bool $active
    *   Sets whether this tab is active (e.g. a parent of the current tab).
    *
-   * @return \Drupal\Core\Menu\LocalTaskInterface
+   * @return $this
    *   The called object for chaining.
    */
   public function setActive($active = TRUE);
diff --git a/core/lib/Drupal/Core/Plugin/Context/EntityContext.php b/core/lib/Drupal/Core/Plugin/Context/EntityContext.php
index 131360df26d880f98bf441a284bc7765fadffb08..c312ba87b326bef0abe1a6ebfdc188273e0d7c4a 100644
--- a/core/lib/Drupal/Core/Plugin/Context/EntityContext.php
+++ b/core/lib/Drupal/Core/Plugin/Context/EntityContext.php
@@ -51,7 +51,7 @@ public static function fromEntityType(EntityTypeInterface $entity_type, $label =
    * @param string $label
    *   (optional) The label of the context.
    *
-   * @return \Drupal\Core\Plugin\Context\EntityContext
+   * @return static
    */
   public static function fromEntity(EntityInterface $entity, $label = NULL) {
     $context = static::fromEntityType($entity->getEntityType(), $label);
diff --git a/core/lib/Drupal/Core/Session/AccountSwitcherInterface.php b/core/lib/Drupal/Core/Session/AccountSwitcherInterface.php
index 2f326093cb733fdf21d1c2a24f946ccf32675147..8bdd7b5a0ef5047e93497a68a90eefe00edaa241 100644
--- a/core/lib/Drupal/Core/Session/AccountSwitcherInterface.php
+++ b/core/lib/Drupal/Core/Session/AccountSwitcherInterface.php
@@ -19,7 +19,7 @@ interface AccountSwitcherInterface {
    * @param \Drupal\Core\Session\AccountInterface $account
    *   The account to switch to.
    *
-   * @return \Drupal\Core\Session\AccountSwitcherInterface
+   * @return $this
    *   $this.
    */
   public function switchTo(AccountInterface $account);
@@ -27,7 +27,7 @@ public function switchTo(AccountInterface $account);
   /**
    * Reverts to a previous account after switching.
    *
-   * @return \Drupal\Core\Session\AccountSwitcherInterface
+   * @return $this
    *   $this.
    *
    * @throws \RuntimeException
diff --git a/core/lib/Drupal/Core/StringTranslation/PluralTranslatableMarkup.php b/core/lib/Drupal/Core/StringTranslation/PluralTranslatableMarkup.php
index 01c9fe652ce45a7dfae9883913fa247259811aca..61df3dd54acf00969c523ce49db67ac0e378f269 100644
--- a/core/lib/Drupal/Core/StringTranslation/PluralTranslatableMarkup.php
+++ b/core/lib/Drupal/Core/StringTranslation/PluralTranslatableMarkup.php
@@ -92,7 +92,7 @@ public function __construct($count, $singular, $plural, array $args = [], array
    * @param array $options
    *   An associative array of additional options. See t() for allowed keys.
    *
-   * @return \Drupal\Core\StringTranslation\PluralTranslatableMarkup
+   * @return static
    *   A PluralTranslatableMarkup object.
    */
   public static function createFromTranslatedString($count, $translated_string, array $args = [], array $options = []) {
diff --git a/core/lib/Drupal/Core/TypedData/ListDataDefinition.php b/core/lib/Drupal/Core/TypedData/ListDataDefinition.php
index 001c58b28759548fdaccec663e12e838d1998931..21406b9e21e17f3066a2987953f691428e6ae50d 100644
--- a/core/lib/Drupal/Core/TypedData/ListDataDefinition.php
+++ b/core/lib/Drupal/Core/TypedData/ListDataDefinition.php
@@ -20,7 +20,7 @@ class ListDataDefinition extends DataDefinition implements ListDataDefinitionInt
    * @param string $item_type
    *   The data type of the list items; e.g., 'string', 'integer' or 'any'.
    *
-   * @return \Drupal\Core\TypedData\ListDataDefinition
+   * @return static
    *   A new List Data Definition object.
    */
   public static function create($item_type) {
diff --git a/core/lib/Drupal/Core/TypedData/TypedDataInterface.php b/core/lib/Drupal/Core/TypedData/TypedDataInterface.php
index a6892d24f3f8dea8a18282a13287f1dcdd8429d7..f6da49d8c1e56583da866abfe6642f845e382542 100644
--- a/core/lib/Drupal/Core/TypedData/TypedDataInterface.php
+++ b/core/lib/Drupal/Core/TypedData/TypedDataInterface.php
@@ -97,7 +97,7 @@ public function validate();
    *   TRUE. If a property is updated from a parent object, set it to FALSE to
    *   avoid being notified again.
    *
-   * @return \Drupal\Core\TypedData\TypedDataInterface
+   * @return $this
    *   Returns itself to allow for chaining.
    */
   public function applyDefaultValue($notify = TRUE);
diff --git a/core/lib/Drupal/Core/Url.php b/core/lib/Drupal/Core/Url.php
index 71c305b59898eb257bb264f7e2f3e04ac15a7198..ea552bf4cb9f37e72958244cb305c62f6752eca6 100644
--- a/core/lib/Drupal/Core/Url.php
+++ b/core/lib/Drupal/Core/Url.php
@@ -133,7 +133,7 @@ public function __construct($route_name, $route_parameters = [], $options = [])
    * @param array $options
    *   See \Drupal\Core\Url::fromUri() for details.
    *
-   * @return \Drupal\Core\Url
+   * @return static
    *   A new Url object for a routed (internal to Drupal) URL.
    *
    * @see \Drupal\Core\Url::fromUserInput()
@@ -149,7 +149,7 @@ public static function fromRoute($route_name, $route_parameters = [], $options =
    * @param \Drupal\Core\Routing\RouteMatchInterface $route_match
    *   The route match.
    *
-   * @return $this
+   * @return static
    */
   public static function fromRouteMatch(RouteMatchInterface $route_match) {
     if ($route_match->getRouteObject()) {
@@ -254,7 +254,7 @@ public static function fromUserInput($user_input, $options = []) {
    *     defined, the current scheme is used, so the user stays on HTTP or HTTPS
    *     respectively. TRUE enforces HTTPS and FALSE enforces HTTP.
    *
-   * @return \Drupal\Core\Url
+   * @return static
    *   A new Url object with properties depending on the URI scheme. Call the
    *   access() method on this to do access checking.
    *
@@ -333,7 +333,7 @@ public static function fromUri($uri, $options = []) {
    * @param string $uri
    *   The original entered URI.
    *
-   * @return \Drupal\Core\Url
+   * @return static
    *   A new Url object for an entity's canonical route.
    *
    * @throws \InvalidArgumentException
@@ -383,7 +383,7 @@ protected static function fromEntityUri(array $uri_parts, array $options, $uri)
    * @param array $options
    *   An array of options, see \Drupal\Core\Url::fromUri() for details.
    *
-   * @return \Drupal\Core\Url
+   * @return static
    *   A new Url object for a 'internal:' URI.
    *
    * @throws \InvalidArgumentException
@@ -432,7 +432,7 @@ protected static function fromInternalUri(array $uri_parts, array $options) {
    * @param string $uri
    *   The original passed in URI.
    *
-   * @return \Drupal\Core\Url
+   * @return static
    *   A new Url object for a 'route:' URI.
    *
    * @throws \InvalidArgumentException
diff --git a/core/modules/aggregator/src/FeedInterface.php b/core/modules/aggregator/src/FeedInterface.php
index 19bde2e43c27e74cbceba49e0e93a28ffb8898e8..6885eff14c7e7087ba04452880c01c78a882d0ce 100644
--- a/core/modules/aggregator/src/FeedInterface.php
+++ b/core/modules/aggregator/src/FeedInterface.php
@@ -15,7 +15,7 @@ interface FeedInterface extends ContentEntityInterface {
    * @param string $title
    *   The short title of the feed.
    *
-   * @return \Drupal\aggregator\FeedInterface
+   * @return $this
    *   The class instance that this method is called on.
    */
   public function setTitle($title);
@@ -34,7 +34,7 @@ public function getUrl();
    * @param string $url
    *   A string containing the url of the feed.
    *
-   * @return \Drupal\aggregator\FeedInterface
+   * @return $this
    *   The class instance that this method is called on.
    */
   public function setUrl($url);
@@ -53,7 +53,7 @@ public function getRefreshRate();
    * @param int $refresh
    *   The refresh rate of the feed in seconds.
    *
-   * @return \Drupal\aggregator\FeedInterface
+   * @return $this
    *   The class instance that this method is called on.
    */
   public function setRefreshRate($refresh);
@@ -72,7 +72,7 @@ public function getLastCheckedTime();
    * @param int $checked
    *   The timestamp of the last refresh.
    *
-   * @return \Drupal\aggregator\FeedInterface
+   * @return $this
    *   The class instance that this method is called on.
    */
   public function setLastCheckedTime($checked);
@@ -91,7 +91,7 @@ public function getQueuedTime();
    * @param int $queued
    *   The timestamp of the last refresh.
    *
-   * @return \Drupal\aggregator\FeedInterface
+   * @return $this
    *   The class instance that this method is called on.
    */
   public function setQueuedTime($queued);
@@ -110,7 +110,7 @@ public function getWebsiteUrl();
    * @param string $link
    *   A string containing the parent website of the feed.
    *
-   * @return \Drupal\aggregator\FeedInterface
+   * @return $this
    *   The class instance that this method is called on.
    */
   public function setWebsiteUrl($link);
@@ -129,7 +129,7 @@ public function getDescription();
    * @param string $description
    *   The description of the feed.
    *
-   * @return \Drupal\aggregator\FeedInterface
+   * @return $this
    *   The class instance that this method is called on.
    */
   public function setDescription($description);
@@ -148,7 +148,7 @@ public function getImage();
    * @param string $image
    *   An image URL.
    *
-   * @return \Drupal\aggregator\FeedInterface
+   * @return $this
    *   The class instance that this method is called on.
    */
   public function setImage($image);
@@ -168,7 +168,7 @@ public function getHash();
    *   A string containing the calculated hash of the feed. Must contain
    *   US ASCII characters only.
    *
-   * @return \Drupal\aggregator\FeedInterface
+   * @return $this
    *   The class instance that this method is called on.
    */
   public function setHash($hash);
@@ -187,7 +187,7 @@ public function getEtag();
    * @param string $etag
    *   A string containing the entity tag HTTP response header.
    *
-   * @return \Drupal\aggregator\FeedInterface
+   * @return $this
    *   The class instance that this method is called on.
    */
   public function setEtag($etag);
@@ -206,7 +206,7 @@ public function getLastModified();
    * @param int $modified
    *   The timestamp when the feed was modified.
    *
-   * @return \Drupal\aggregator\FeedInterface
+   * @return $this
    *   The class instance that this method is called on.
    */
   public function setLastModified($modified);
@@ -217,7 +217,7 @@ public function setLastModified($modified);
    * This will also reset the last checked and modified time of the feed and
    * save it.
    *
-   * @return \Drupal\aggregator\FeedInterface
+   * @return $this
    *   The class instance that this method is called on.
    *
    * @see \Drupal\aggregator\ItemsImporterInterface::delete()
diff --git a/core/modules/aggregator/src/ItemInterface.php b/core/modules/aggregator/src/ItemInterface.php
index 8639ff87175d07986dc9fd095caf02ddc172e4d7..090fc650754905eb5b9176a4012f459fa40071a0 100644
--- a/core/modules/aggregator/src/ItemInterface.php
+++ b/core/modules/aggregator/src/ItemInterface.php
@@ -23,7 +23,7 @@ public function getFeedId();
    * @param int $fid
    *   The feed id.
    *
-   * @return \Drupal\aggregator\ItemInterface
+   * @return $this
    *   The called feed item entity.
    */
   public function setFeedId($fid);
@@ -42,7 +42,7 @@ public function getTitle();
    * @param string $title
    *   The title of the feed item.
    *
-   * @return \Drupal\aggregator\ItemInterface
+   * @return $this
    *   The called feed item entity.
    */
   public function setTitle($title);
@@ -61,7 +61,7 @@ public function getLink();
    * @param string $link
    *   The link to the feed item.
    *
-   * @return \Drupal\aggregator\ItemInterface
+   * @return $this
    *   The called feed item entity.
    */
   public function setLink($link);
@@ -80,7 +80,7 @@ public function getAuthor();
    * @param string $author
    *   The author name of the feed item.
    *
-   * @return \Drupal\aggregator\ItemInterface
+   * @return $this
    *   The called feed item entity.
    */
   public function setAuthor($author);
@@ -99,7 +99,7 @@ public function getDescription();
    * @param string $description
    *   The body of the feed item.
    *
-   * @return \Drupal\aggregator\ItemInterface
+   * @return $this
    *   The called feed item entity.
    */
   public function setDescription($description);
@@ -118,7 +118,7 @@ public function getPostedTime();
    * @param int $timestamp
    *   The posted date of the feed item, as a Unix timestamp.
    *
-   * @return \Drupal\aggregator\ItemInterface
+   * @return $this
    *   The called feed item entity.
    */
   public function setPostedTime($timestamp);
@@ -137,7 +137,7 @@ public function getGuid();
    * @param string $guid
    *   The unique identifier for the feed item.
    *
-   * @return \Drupal\aggregator\ItemInterface
+   * @return $this
    *   The called feed item entity.
    */
   public function setGuid($guid);
diff --git a/core/modules/block_content/src/BlockContentInterface.php b/core/modules/block_content/src/BlockContentInterface.php
index bba6e4663d5bc9d29bbd898ec9fbfaeeba21d5e9..ec44dfbb57ed778e865a3ea7128da661e1cd22f7 100644
--- a/core/modules/block_content/src/BlockContentInterface.php
+++ b/core/modules/block_content/src/BlockContentInterface.php
@@ -30,7 +30,7 @@ public function getRevisionLog();
    * @param string $info
    *   The block description.
    *
-   * @return \Drupal\block_content\BlockContentInterface
+   * @return $this
    *   The class instance that this method is called on.
    */
   public function setInfo($info);
@@ -41,7 +41,7 @@ public function setInfo($info);
    * @param string $revision_log
    *   The revision log message.
    *
-   * @return \Drupal\block_content\BlockContentInterface
+   * @return $this
    *   The class instance that this method is called on.
    *
    * @deprecated in Drupal 8.2.0, will be removed before Drupal 9.0.0. Use
@@ -81,7 +81,7 @@ public function setNonReusable();
    * @param string $theme
    *   The theme name.
    *
-   * @return \Drupal\block_content\BlockContentInterface
+   * @return $this
    *   The class instance that this method is called on.
    */
   public function setTheme($theme);
diff --git a/core/modules/image/src/ImageStyleInterface.php b/core/modules/image/src/ImageStyleInterface.php
index 8430fdc2f704cfcdb705fad85b487a32c9212625..b6970fdbde1d4801409c4df7cc30ff7ce99a73b4 100644
--- a/core/modules/image/src/ImageStyleInterface.php
+++ b/core/modules/image/src/ImageStyleInterface.php
@@ -37,7 +37,7 @@ public function getName();
    * @param string $name
    *   The name of the image style.
    *
-   * @return \Drupal\image\ImageStyleInterface
+   * @return $this
    *   The class instance this method is called on.
    */
   public function setName($name);
diff --git a/core/modules/jsonapi/src/JsonApiResource/Data.php b/core/modules/jsonapi/src/JsonApiResource/Data.php
index c050835b1df87e8590f2c326267f4fc63bce1aad..57dd0ad675a1233de4070e893f5ba45796b00b78 100644
--- a/core/modules/jsonapi/src/JsonApiResource/Data.php
+++ b/core/modules/jsonapi/src/JsonApiResource/Data.php
@@ -148,7 +148,7 @@ public function getCardinality() {
    * @param \Drupal\jsonapi\JsonApiResource\Data $b
    *   A Data object to be merged.
    *
-   * @return \Drupal\jsonapi\JsonApiResource\Data
+   * @return static
    *   A new merged Data object.
    */
   public static function merge(Data $a, Data $b) {
diff --git a/core/modules/jsonapi/src/Query/OffsetPage.php b/core/modules/jsonapi/src/Query/OffsetPage.php
index e620ca8e6118beceeb91651fc9c0fc94bcae5485..70a752ef2c3ae92ae5df87b82b2ad91aec5f1c24 100644
--- a/core/modules/jsonapi/src/Query/OffsetPage.php
+++ b/core/modules/jsonapi/src/Query/OffsetPage.php
@@ -104,7 +104,7 @@ public function getSize() {
    * @param mixed $parameter
    *   The `page` query parameter from the Symfony request object.
    *
-   * @return \Drupal\jsonapi\Query\OffsetPage
+   * @return static
    *   An OffsetPage object with defaults.
    */
   public static function createFromQueryParameter($parameter) {
diff --git a/core/modules/locale/src/StringStorageInterface.php b/core/modules/locale/src/StringStorageInterface.php
index 18c5edc2b6947463712e1afadab1d3adccdb3cb8..51dd7d5e404dbebf235a9b5ace8414136d26b723 100644
--- a/core/modules/locale/src/StringStorageInterface.php
+++ b/core/modules/locale/src/StringStorageInterface.php
@@ -101,7 +101,7 @@ public function findTranslation(array $conditions);
    * @param \Drupal\locale\StringInterface $string
    *   The string object.
    *
-   * @return \Drupal\locale\StringStorageInterface
+   * @return $this
    *   The called object.
    *
    * @throws \Drupal\locale\StringStorageException
@@ -115,7 +115,7 @@ public function save($string);
    * @param \Drupal\locale\StringInterface $string
    *   The string object.
    *
-   * @return \Drupal\locale\StringStorageInterface
+   * @return $this
    *   The called object.
    *
    * @throws \Drupal\locale\StringStorageException
diff --git a/core/modules/locale/src/TranslationString.php b/core/modules/locale/src/TranslationString.php
index 63f4543cb5dc211f573994e16148db4fc4d9946c..c32d23f2d25f120e7009f1776924b5a2024cf4d4 100644
--- a/core/modules/locale/src/TranslationString.php
+++ b/core/modules/locale/src/TranslationString.php
@@ -58,7 +58,7 @@ public function __construct($values = []) {
    * @param bool $customized
    *   (optional) Whether the string is customized or not. Defaults to TRUE.
    *
-   * @return \Drupal\locale\TranslationString
+   * @return $this
    *   The called object.
    */
   public function setCustomized($customized = TRUE) {
diff --git a/core/modules/media/src/MediaInterface.php b/core/modules/media/src/MediaInterface.php
index 912bf97f3ebba78490aa07b2724c9e5212c76f16..3aeaef56ab25d0f2601ead6d3ee6daedf1749e2e 100644
--- a/core/modules/media/src/MediaInterface.php
+++ b/core/modules/media/src/MediaInterface.php
@@ -51,7 +51,7 @@ public function getCreatedTime();
    * @param int $timestamp
    *   The media creation timestamp.
    *
-   * @return \Drupal\media\MediaInterface
+   * @return $this
    *   The called media item.
    */
   public function setCreatedTime($timestamp);
diff --git a/core/modules/media_library/src/MediaLibraryState.php b/core/modules/media_library/src/MediaLibraryState.php
index c29b6e936fc54efa7942dc6d6e62cf4f11dbd3b3..11621ee5c2efa560391e4402268f10b8f3130e66 100644
--- a/core/modules/media_library/src/MediaLibraryState.php
+++ b/core/modules/media_library/src/MediaLibraryState.php
@@ -71,7 +71,7 @@ public function __construct(array $parameters = []) {
    * @param array $opener_parameters
    *   (optional) Any additional opener-specific parameter values.
    *
-   * @return \Drupal\media_library\MediaLibraryState
+   * @return static
    *   A state object.
    */
   public static function create($opener_id, array $allowed_media_type_ids, $selected_type_id, $remaining_slots, array $opener_parameters = []) {
@@ -91,7 +91,7 @@ public static function create($opener_id, array $allowed_media_type_ids, $select
    * @param \Symfony\Component\HttpFoundation\Request $request
    *   The request.
    *
-   * @return \Drupal\media_library\MediaLibraryState
+   * @return static
    *   A state object.
    *
    * @throws \Symfony\Component\HttpKernel\Exception\BadRequestHttpException
diff --git a/core/modules/node/src/NodeInterface.php b/core/modules/node/src/NodeInterface.php
index ae5a786dd8c79eef2672680cf2363a11d8f987de..fc88507d04ddb428db2b1677943e39e472d19cc7 100644
--- a/core/modules/node/src/NodeInterface.php
+++ b/core/modules/node/src/NodeInterface.php
@@ -65,7 +65,7 @@ public function getTitle();
    * @param string $title
    *   The node title.
    *
-   * @return \Drupal\node\NodeInterface
+   * @return $this
    *   The called node entity.
    */
   public function setTitle($title);
@@ -84,7 +84,7 @@ public function getCreatedTime();
    * @param int $timestamp
    *   The node creation timestamp.
    *
-   * @return \Drupal\node\NodeInterface
+   * @return $this
    *   The called node entity.
    */
   public function setCreatedTime($timestamp);
@@ -103,7 +103,7 @@ public function isPromoted();
    * @param bool $promoted
    *   TRUE to set this node to promoted, FALSE to set it to not promoted.
    *
-   * @return \Drupal\node\NodeInterface
+   * @return $this
    *   The called node entity.
    */
   public function setPromoted($promoted);
@@ -122,7 +122,7 @@ public function isSticky();
    * @param bool $sticky
    *   TRUE to set this node to sticky, FALSE to set it to not sticky.
    *
-   * @return \Drupal\node\NodeInterface
+   * @return $this
    *   The called node entity.
    */
   public function setSticky($sticky);
@@ -141,7 +141,7 @@ public function getRevisionCreationTime();
    * @param int $timestamp
    *   The UNIX timestamp of when this revision was created.
    *
-   * @return \Drupal\node\NodeInterface
+   * @return $this
    *   The called node entity.
    */
   public function setRevisionCreationTime($timestamp);
@@ -165,7 +165,7 @@ public function getRevisionAuthor();
    * @param int $uid
    *   The user ID of the revision author.
    *
-   * @return \Drupal\node\NodeInterface
+   * @return $this
    *   The called node entity.
    *
    * @deprecated in drupal:8.2.0 and is removed from drupal:9.0.0. Use
diff --git a/core/modules/search/src/Plugin/SearchInterface.php b/core/modules/search/src/Plugin/SearchInterface.php
index 8f95ce824664360f7f9ed573c48e26470f23db15..b1421ff0c3f750f6782aa739f4117c934c4670d3 100644
--- a/core/modules/search/src/Plugin/SearchInterface.php
+++ b/core/modules/search/src/Plugin/SearchInterface.php
@@ -21,7 +21,7 @@ interface SearchInterface extends PluginInspectionInterface {
    * @param array $attributes
    *   Array of attributes, usually from the current request object.
    *
-   * @return \Drupal\search\Plugin\SearchInterface
+   * @return $this
    *   A search plugin object for chaining.
    */
   public function setSearch($keywords, array $parameters, array $attributes);
diff --git a/core/modules/shortcut/src/ShortcutInterface.php b/core/modules/shortcut/src/ShortcutInterface.php
index e434266eec0e441e31aad0f73b34c2bdaea40f40..d095bfc7f5b2fa4a1455679d44609a79e112a147 100644
--- a/core/modules/shortcut/src/ShortcutInterface.php
+++ b/core/modules/shortcut/src/ShortcutInterface.php
@@ -23,7 +23,7 @@ public function getTitle();
    * @param string $title
    *   The title of this shortcut.
    *
-   * @return \Drupal\shortcut\ShortcutInterface
+   * @return $this
    *   The called shortcut entity.
    */
   public function setTitle($title);
@@ -42,7 +42,7 @@ public function getWeight();
    * @param int $weight
    *   The shortcut weight.
    *
-   * @return \Drupal\shortcut\ShortcutInterface
+   * @return $this
    *   The called shortcut entity.
    */
   public function setWeight($weight);
diff --git a/core/modules/shortcut/src/ShortcutSetInterface.php b/core/modules/shortcut/src/ShortcutSetInterface.php
index 3ad5e696c5887f123860f5d3d44630528cc7e8c9..8b8cf45ea60b76b34d8547a467d7a574c9db11d3 100644
--- a/core/modules/shortcut/src/ShortcutSetInterface.php
+++ b/core/modules/shortcut/src/ShortcutSetInterface.php
@@ -16,7 +16,7 @@ interface ShortcutSetInterface extends ConfigEntityInterface {
    * to the set. If the link is added to the end of the array and this function
    * is called, it will force that link to display at the end of the list.
    *
-   * @return \Drupal\shortcut\ShortcutSetInterface
+   * @return $this
    *   The shortcut set.
    */
   public function resetLinkWeights();
diff --git a/core/modules/system/src/Plugin/ImageToolkit/GDToolkit.php b/core/modules/system/src/Plugin/ImageToolkit/GDToolkit.php
index 21ea15967a98468b3f6adeefe5b3e59b0da426d7..c07c9cf3c50044b60d55034efb9d3a1d6b0fdd47 100644
--- a/core/modules/system/src/Plugin/ImageToolkit/GDToolkit.php
+++ b/core/modules/system/src/Plugin/ImageToolkit/GDToolkit.php
@@ -131,7 +131,7 @@ public static function create(ContainerInterface $container, array $configuratio
    * @param resource $resource
    *   The GD image resource.
    *
-   * @return \Drupal\system\Plugin\ImageToolkit\GDToolkit
+   * @return $this
    *   An instance of the current toolkit object.
    */
   public function setResource($resource) {
diff --git a/core/modules/update/tests/modules/update_test/src/TestFileTransferWithSettingsForm.php b/core/modules/update/tests/modules/update_test/src/TestFileTransferWithSettingsForm.php
index 5b0d6c303f4b4dc3a3968898a43d2246e327f557..5e3e129fec6f3c82081da7f6d4cedbb7731ff87c 100644
--- a/core/modules/update/tests/modules/update_test/src/TestFileTransferWithSettingsForm.php
+++ b/core/modules/update/tests/modules/update_test/src/TestFileTransferWithSettingsForm.php
@@ -18,7 +18,7 @@ class TestFileTransferWithSettingsForm extends Local {
   /**
    * Returns a Drupal\update_test\TestFileTransferWithSettingsForm object.
    *
-   * @return \Drupal\update_test\TestFileTransferWithSettingsForm
+   * @return static
    *   A new Drupal\update_test\TestFileTransferWithSettingsForm object.
    */
   public static function factory($jail, $settings) {
diff --git a/core/modules/user/src/UserInterface.php b/core/modules/user/src/UserInterface.php
index 6919e0d7b4ba4f9126694f509ea5c3fd316bb01e..64cbc19b9aa0a1e71d671f0887c686aeb77b03dd 100644
--- a/core/modules/user/src/UserInterface.php
+++ b/core/modules/user/src/UserInterface.php
@@ -83,7 +83,7 @@ public function removeRole($rid);
    * @param string $username
    *   The new user name.
    *
-   * @return \Drupal\user\UserInterface
+   * @return $this
    *   The called user entity.
    */
   public function setUsername($username);
@@ -102,7 +102,7 @@ public function getPassword();
    * @param string $password
    *   The new unhashed password.
    *
-   * @return \Drupal\user\UserInterface
+   * @return $this
    *   The called user entity.
    */
   public function setPassword($password);
@@ -113,7 +113,7 @@ public function setPassword($password);
    * @param string $mail
    *   The new email address of the user.
    *
-   * @return \Drupal\user\UserInterface
+   * @return $this
    *   The called user entity.
    */
   public function setEmail($mail);
@@ -132,7 +132,7 @@ public function getCreatedTime();
    * @param int $timestamp
    *   Timestamp of the last access.
    *
-   * @return \Drupal\user\UserInterface
+   * @return $this
    *   The called user entity.
    */
   public function setLastAccessTime($timestamp);
@@ -151,7 +151,7 @@ public function getLastLoginTime();
    * @param int $timestamp
    *   Timestamp of the last login time.
    *
-   * @return \Drupal\user\UserInterface
+   * @return $this
    *   The called user entity.
    */
   public function setLastLoginTime($timestamp);
@@ -175,7 +175,7 @@ public function isBlocked();
   /**
    * Activates the user.
    *
-   * @return \Drupal\user\UserInterface
+   * @return $this
    *   The called user entity.
    */
   public function activate();
@@ -183,7 +183,7 @@ public function activate();
   /**
    * Blocks the user.
    *
-   * @return \Drupal\user\UserInterface
+   * @return $this
    *   The called user entity.
    */
   public function block();
diff --git a/core/modules/workflows/src/WorkflowTypeInterface.php b/core/modules/workflows/src/WorkflowTypeInterface.php
index e07d65d0f65de11675d7ef41f596312520f77aa6..457b28c49ecc43c44e1b360014b0bb21b761e9e7 100644
--- a/core/modules/workflows/src/WorkflowTypeInterface.php
+++ b/core/modules/workflows/src/WorkflowTypeInterface.php
@@ -177,7 +177,7 @@ public function setStateWeight($state_id, $weight);
    * @param string $state_id
    *   The state ID to delete.
    *
-   * @return \Drupal\workflows\WorkflowTypeInterface
+   * @return $this
    *   The workflow type plugin.
    *
    * @throws \InvalidArgumentException