芝麻web文件管理V1.00
编辑当前文件:/home2/sdektunc/airport-back/vendor/sebastian/type/src/ObjectType.php
* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace SebastianBergmann\Type; final class ObjectType extends Type { /** * @var TypeName */ private $className; /** * @var bool */ private $allowsNull; public function __construct(TypeName $className, bool $allowsNull) { $this->className = $className; $this->allowsNull = $allowsNull; } public function isAssignable(Type $other): bool { if ($this->allowsNull && $other instanceof NullType) { return true; } if ($other instanceof self) { if (0 === \strcasecmp($this->className->getQualifiedName(), $other->className->getQualifiedName())) { return true; } if (\is_subclass_of($other->className->getQualifiedName(), $this->className->getQualifiedName(), true)) { return true; } } return false; } public function getReturnTypeDeclaration(): string { return ': ' . ($this->allowsNull ? '?' : '') . $this->className->getQualifiedName(); } public function allowsNull(): bool { return $this->allowsNull; } public function className(): TypeName { return $this->className; } }