mirror of
https://github.com/10h30/laravel-file-upload-series.git
synced 2026-07-18 22:23:17 +09:00
43 lines
682 B
PHP
43 lines
682 B
PHP
<?php declare(strict_types = 1);
|
|
|
|
namespace PHPStan\PhpDocParser\Ast;
|
|
|
|
use function array_key_exists;
|
|
|
|
trait NodeAttributes
|
|
{
|
|
|
|
/** @var array<string, mixed> */
|
|
private array $attributes = [];
|
|
|
|
/**
|
|
* @param mixed $value
|
|
*/
|
|
public function setAttribute(string $key, $value): void
|
|
{
|
|
if ($value === null) {
|
|
unset($this->attributes[$key]);
|
|
return;
|
|
}
|
|
$this->attributes[$key] = $value;
|
|
}
|
|
|
|
public function hasAttribute(string $key): bool
|
|
{
|
|
return array_key_exists($key, $this->attributes);
|
|
}
|
|
|
|
/**
|
|
* @return mixed
|
|
*/
|
|
public function getAttribute(string $key)
|
|
{
|
|
if ($this->hasAttribute($key)) {
|
|
return $this->attributes[$key];
|
|
}
|
|
|
|
return null;
|
|
}
|
|
|
|
}
|