icingaweb2/library/Icinga/Less/LightModeCall.php
Eric Lippmann 662de28f85 License source files as GPL-3.0-or-later
Add SPDX license headers and mark source files as GPL-3.0-or-later to
preserve the option to relicense under later GPL versions.
2026-03-26 17:49:26 +01:00

40 lines
880 B
PHP

<?php
// SPDX-FileCopyrightText: 2022 Icinga GmbH <https://icinga.com>
// SPDX-License-Identifier: GPL-3.0-or-later
namespace Icinga\Less;
use Less_Environment;
use Less_Tree_Ruleset;
use Less_Tree_RulesetCall;
/**
* Use the environment where the light mode was defined to evaluate the call
*/
class LightModeCall extends Less_Tree_RulesetCall
{
use LightModeTrait;
/**
* @param Less_Tree_RulesetCall $c
*
* @return static
*/
public static function fromRulesetCall(Less_Tree_RulesetCall $c)
{
return new static($c->variable);
}
/**
* @param Less_Environment $env
*
* @return Less_Tree_Ruleset
*/
public function compile($env)
{
return parent::compile(
$env->copyEvalEnv(array_merge($env->frames, $this->getLightMode()->getEnv($this->variable)->frames))
);
}
}