You are here

public function Plugin::__construct in Plug 7

Constructs a Plugin object.

Builds up the plugin definition and invokes the get() method for any classed annotations that were used.

File

lib/Drupal/Component/Annotation/Plugin.php, line 40
Contains \Drupal\Component\Annotation\Plugin.

Class

Plugin
Defines a Plugin annotation object.

Namespace

Drupal\Component\Annotation

Code

public function __construct($values) {
  $reflection = new \ReflectionClass($this);

  // Only keep actual default values by ignoring NULL values.
  $defaults = array_filter($reflection
    ->getDefaultProperties(), function ($value) {
    return $value !== NULL;
  });
  $parsed_values = $this
    ->parse($values);
  $this->definition = NestedArray::mergeDeep($defaults, $parsed_values);
}