function Debug::message

Same name in other branches
  1. 4.x src/Twig/Extension/Debug.php \Drupal\devel\Twig\Extension\Debug::message()

Provides debug function to Twig templates.

Handles 0, 1, or multiple arguments.

Parameters

\Twig\Environment $env: The twig environment instance.

array $context: An array of parameters passed to the template.

array $args: An array of parameters passed the function.

See also

\Drupal\devel\DevelDumperManager::message()

File

src/Twig/Extension/Debug.php, line 166

Class

Debug
Provides the Devel debugging function within Twig templates.

Namespace

Drupal\devel\Twig\Extension

Code

public function message(Environment $env, array $context, array $args = []) : void {
    if (!$env->isDebug()) {
        return;
    }
    // No arguments passed, display full Twig context.
    if ($args === []) {
        $context_variables = $this->getContextVariables($context);
        $this->dumper
            ->message($context_variables, 'Twig context');
    }
    else {
        $parameters = $this->guessTwigFunctionParameters();
        foreach ($args as $index => $variable) {
            $name = empty($parameters[$index]) ? NULL : $parameters[$index];
            $this->dumper
                ->message($variable, $name);
        }
    }
}