Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. Doubler.php

function Doubler::createDoubleClass

Creates double class and returns its FQN.

@template T of object

Parameters

ReflectionClass<T>|null $class:

ReflectionClass<object>[] $interfaces:

Return value

class-string<T&DoubleInterface>

3 calls to Doubler::createDoubleClass()
CachedDoubler::createDoubleClass in vendor/phpspec/prophecy/src/Prophecy/Doubler/CachedDoubler.php
Creates double class and returns its FQN.
CachedDoubler::createDoubleClass in vendor/phpspec/prophecy/src/Prophecy/Doubler/CachedDoubler.php
Creates double class and returns its FQN.
Doubler::double in vendor/phpspec/prophecy/src/Prophecy/Doubler/Doubler.php
Creates double from specific class or/and list of interfaces.
1 method overrides Doubler::createDoubleClass()
CachedDoubler::createDoubleClass in vendor/phpspec/prophecy/src/Prophecy/Doubler/CachedDoubler.php
Creates double class and returns its FQN.

File

vendor/phpspec/prophecy/src/Prophecy/Doubler/Doubler.php, line 130

Class

Doubler
Cached class doubler. Prevents mirroring/creation of the same structure twice.

Namespace

Prophecy\Doubler

Code

protected function createDoubleClass(?ReflectionClass $class, array $interfaces) {
    $name = $this->namer
        ->name($class, $interfaces);
    $node = $this->mirror
        ->reflect($class, $interfaces);
    foreach ($this->patches as $patch) {
        if ($patch->supports($node)) {
            $patch->apply($node);
        }
    }
    $node->addInterface(DoubleInterface::class);
    $this->creator
        ->create($name, $node);
    \assert(class_exists($name, false));
    return $name;
}

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal