Major refactoring cleanup: - Add new controller architecture (class-controller-*.php) - Add new settings-v2 UI (views/settings-v2/) - Add new CSS architecture (agentic-sidebar.css, tokens) - Add esbuild build pipeline (scripts/build.js, package.json) - Add composer dependencies (vendor/) - Add frontend src directory (assets/js/src/index.jsx) - Add documentation files - Remove old/obsolete files (class-settings.php, old CSS) This commits all pending changes from previous refactoring efforts.
34 lines
889 B
PHP
34 lines
889 B
PHP
<?php declare(strict_types=1);
|
|
|
|
namespace PhpParser\Node\Stmt;
|
|
|
|
use PhpParser\Node;
|
|
|
|
class TraitUse extends Node\Stmt {
|
|
/** @var Node\Name[] Traits */
|
|
public array $traits;
|
|
/** @var TraitUseAdaptation[] Adaptations */
|
|
public array $adaptations;
|
|
|
|
/**
|
|
* Constructs a trait use node.
|
|
*
|
|
* @param Node\Name[] $traits Traits
|
|
* @param TraitUseAdaptation[] $adaptations Adaptations
|
|
* @param array<string, mixed> $attributes Additional attributes
|
|
*/
|
|
public function __construct(array $traits, array $adaptations = [], array $attributes = []) {
|
|
$this->attributes = $attributes;
|
|
$this->traits = $traits;
|
|
$this->adaptations = $adaptations;
|
|
}
|
|
|
|
public function getSubNodeNames(): array {
|
|
return ['traits', 'adaptations'];
|
|
}
|
|
|
|
public function getType(): string {
|
|
return 'Stmt_TraitUse';
|
|
}
|
|
}
|