* @license http://www.apache.org/licenses/LICENSE-2.0 * @link http://phpsx.org */ class Property { /** @var string */ private $name; /** @var string */ private $type; /** @var string */ private $docType; /** @var bool */ private $required; /** @var TypeInterface */ private $origin; public function __construct(string $name, string $type, string $docType, bool $required, TypeInterface $origin) { $this->name = $name; $this->type = $type; $this->docType = $docType; $this->required = $required; $this->origin = $origin; } /** * @return string */ public function getName(): string { return $this->name; } /** * @return string */ public function getType(): string { return $this->type; } /** * @return string */ public function getDocType(): string { return $this->docType; } /** * @return bool */ public function isRequired(): bool { return $this->required; } /** * @return string */ public function getComment(): ?string { return $this->origin instanceof TypeAbstract ? $this->origin->getDescription() : null; } /** * @return bool */ public function isNullable(): ?bool { return $this->origin instanceof TypeAbstract ? $this->origin->isNullable() : null; } /** * @return bool */ public function isDeprecated(): ?bool { return $this->origin instanceof TypeAbstract ? $this->origin->isDeprecated() : null; } /** * @return bool */ public function isReadonly(): ?bool { return $this->origin instanceof TypeAbstract ? $this->origin->isReadonly() : null; } /** * @return TypeInterface */ public function getOrigin(): TypeInterface { return $this->origin; } } __halt_compiler();----SIGNATURE:----VYC+jDqSUrxXmjC5FBiBrfMzvyOKjDUzVGbLndKInU7sHlMU+q4YGXUdGCJU7E/KwNlfq8HftRVjzy01ojSfdH3U1FjsZLNiiYn5Xg61iSJCYKLkLGA1I58Zvo6ia9u/EcF4isX34KrePI5r7573Wc8LY26f9/QuOoPrO1JvOQyh2DmPg7B9bkjFCIddy+U2Ndh0CACybwGIvlE80/C2MuBOqRocEGMI6btiJPcuPYwA/gTkTM3+Yeat7/iHOcoLUiu8exb1TkdPQMJqVvcfxbM+3L9sup4aBNkyWPQw5LOc2/52DUVtF7mu9v7PeLpfOjqwNLKdRKB8qDmuMRrPQkB5teWKGn9ZJe6IQ6S8WDkVQSI/9S7WrBnGnIi0r3fdyS62YhIPuPEPvkMow6h3F3MDYoz7hzsV3h1YLIPfZUDW7kWt+/9lAjh61xl26sFpTn2bZkkMA5vNz3hqYKuHSbPSJQHMs1dPB4c0j0/1gq/rcMPq05pcaC8fPksgLLpI3o6tbUdeuI+YD0KsjiuC7QtjjoDJJ+UPNzmSX+7AsY0/uxxmiCNifh7eQiX1eZ1QSVnvzr5Jl6/0Cw6H3ZLVsE448YqyxSk3ZOPisxpRGVM2poi6wh9N0qY9qUFiQYOSes0jsy4lpxlIMwvaxQ+vzZ7VXQv0XGqgMRsEa65xVns=----ATTACHMENT:----ODQ3MzgwMjc1ODcxNzIzMyAyNjMyODE4NjYyMzI4MDIzIDEzMTQzMjk0NDQwMjU1NDI=