mirror of
https://github.com/barryvdh/ReflectionDocBlock.git
synced 2026-08-18 10:07:12 +00:00
bump phpstan to master. Fixed ignored errors
This commit is contained in:
@@ -15,7 +15,6 @@ namespace phpDocumentor\Reflection\DocBlock;
|
||||
|
||||
use phpDocumentor\Reflection\Types\Context as TypeContext;
|
||||
use Webmozart\Assert\Assert;
|
||||
use const PREG_SPLIT_DELIM_CAPTURE;
|
||||
use function count;
|
||||
use function explode;
|
||||
use function implode;
|
||||
@@ -27,6 +26,7 @@ use function strlen;
|
||||
use function strpos;
|
||||
use function substr;
|
||||
use function trim;
|
||||
use const PREG_SPLIT_DELIM_CAPTURE;
|
||||
|
||||
/**
|
||||
* Creates a new Description object given a body of text.
|
||||
@@ -128,6 +128,7 @@ class DescriptionFactory
|
||||
PREG_SPLIT_DELIM_CAPTURE
|
||||
);
|
||||
Assert::isArray($parts);
|
||||
|
||||
return $parts;
|
||||
}
|
||||
|
||||
|
||||
@@ -14,7 +14,6 @@ declare(strict_types=1);
|
||||
namespace phpDocumentor\Reflection\DocBlock;
|
||||
|
||||
use phpDocumentor\Reflection\DocBlock\Tags\Example;
|
||||
use const DIRECTORY_SEPARATOR;
|
||||
use function array_slice;
|
||||
use function file;
|
||||
use function getcwd;
|
||||
@@ -23,6 +22,7 @@ use function is_readable;
|
||||
use function rtrim;
|
||||
use function sprintf;
|
||||
use function trim;
|
||||
use const DIRECTORY_SEPARATOR;
|
||||
|
||||
/**
|
||||
* Class used to find an example file's location based on a given ExampleDescriptor.
|
||||
@@ -122,6 +122,7 @@ class ExampleFinder
|
||||
}
|
||||
|
||||
$lines = $normalizedPath && is_readable($normalizedPath) ? file($normalizedPath) : false;
|
||||
|
||||
return $lines !== false ? $lines : null;
|
||||
}
|
||||
|
||||
|
||||
@@ -94,6 +94,7 @@ class Serializer
|
||||
}
|
||||
|
||||
$comment = $this->addTagBlock($docblock, $wrapLength, $indent, $comment);
|
||||
|
||||
return $comment . $indent . ' */';
|
||||
}
|
||||
|
||||
@@ -127,6 +128,7 @@ class Serializer
|
||||
: '');
|
||||
if ($wrapLength !== null) {
|
||||
$text = wordwrap($text, $wrapLength);
|
||||
|
||||
return $text;
|
||||
}
|
||||
|
||||
|
||||
@@ -71,8 +71,8 @@ final class StandardTagFactory implements TagFactory
|
||||
public const REGEX_TAGNAME = '[\w\-\_\\\\:]+';
|
||||
|
||||
/**
|
||||
* @var string[] An array with a tag as a key, and an
|
||||
* FQCN to a class that handles it as an array value.
|
||||
* @var array<class-string<StaticMethod>> An array with a tag as a key, and an
|
||||
* FQCN to a class that handles it as an array value.
|
||||
*/
|
||||
private $tagHandlerMappings = [
|
||||
'author' => Author::class,
|
||||
@@ -97,7 +97,7 @@ final class StandardTagFactory implements TagFactory
|
||||
];
|
||||
|
||||
/**
|
||||
* @var string[] An array with a anotation s a key, and an
|
||||
* @var array<class-string<StaticMethod>> An array with a anotation s a key, and an
|
||||
* FQCN to a class that handles it as an array value.
|
||||
*/
|
||||
private $annotationMappings = [];
|
||||
@@ -125,7 +125,7 @@ final class StandardTagFactory implements TagFactory
|
||||
*
|
||||
* @see self::registerTagHandler() to add a new tag handler to the existing default list.
|
||||
*
|
||||
* @param string[] $tagHandlers
|
||||
* @param array<class-string<StaticMethod>> $tagHandlers
|
||||
*/
|
||||
public function __construct(FqsenResolver $fqsenResolver, ?array $tagHandlers = null)
|
||||
{
|
||||
@@ -137,9 +137,6 @@ final class StandardTagFactory implements TagFactory
|
||||
$this->addService($fqsenResolver, FqsenResolver::class);
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function create(string $tagLine, ?TypeContext $context = null) : Tag
|
||||
{
|
||||
if (!$context) {
|
||||
@@ -152,29 +149,22 @@ final class StandardTagFactory implements TagFactory
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
* @param mixed $value
|
||||
*/
|
||||
public function addParameter(string $name, $value) : void
|
||||
{
|
||||
$this->serviceLocator[$name] = $value;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function addService(object $service, ?string $alias = null) : void
|
||||
{
|
||||
$this->serviceLocator[$alias ?: get_class($service)] = $service;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function registerTagHandler(string $tagName, string $handler) : void
|
||||
{
|
||||
Assert::stringNotEmpty($tagName);
|
||||
Assert::classExists($handler);
|
||||
/** @var object $handler stupid hack to make phpstan happy. */
|
||||
Assert::implementsInterface($handler, StaticMethod::class);
|
||||
|
||||
if (strpos($tagName, '\\') && $tagName[0] !== '\\') {
|
||||
@@ -220,9 +210,10 @@ final class StandardTagFactory implements TagFactory
|
||||
);
|
||||
|
||||
try {
|
||||
/** @var callable $callable */
|
||||
$callable = [$handlerClassName, 'create'];
|
||||
$tag = call_user_func_array($callable, $arguments);
|
||||
Assert::isCallable($callable);
|
||||
$tag = call_user_func_array($callable, $arguments);
|
||||
|
||||
return $tag ?? InvalidTag::create($body, $name);
|
||||
} catch (InvalidArgumentException $e) {
|
||||
return InvalidTag::create($body, $name)->withError($e);
|
||||
|
||||
@@ -14,6 +14,7 @@ declare(strict_types=1);
|
||||
namespace phpDocumentor\Reflection\DocBlock;
|
||||
|
||||
use InvalidArgumentException;
|
||||
use phpDocumentor\Reflection\DocBlock\Tags\Factory\StaticMethod;
|
||||
use phpDocumentor\Reflection\Types\Context as TypeContext;
|
||||
|
||||
interface TagFactory
|
||||
@@ -69,9 +70,9 @@ interface TagFactory
|
||||
* to register the name of a tag with the FQCN of a 'Tag Handler'. The Tag handler should implement
|
||||
* the {@see Tag} interface (and thus the create method).
|
||||
*
|
||||
* @param string $tagName Name of tag to register a handler for. When registering a namespaced tag,
|
||||
* the full name, along with a prefixing slash MUST be provided.
|
||||
* @param string $handler FQCN of handler.
|
||||
* @param string $tagName Name of tag to register a handler for. When registering a namespaced
|
||||
* tag, the full name, along with a prefixing slash MUST be provided.
|
||||
* @param class-string<StaticMethod> $handler FQCN of handler.
|
||||
*
|
||||
* @throws InvalidArgumentException If the tag name is not a string.
|
||||
* @throws InvalidArgumentException If the tag name is namespaced (contains backslashes) but
|
||||
|
||||
@@ -14,11 +14,11 @@ declare(strict_types=1);
|
||||
namespace phpDocumentor\Reflection\DocBlock\Tags;
|
||||
|
||||
use InvalidArgumentException;
|
||||
use const FILTER_VALIDATE_EMAIL;
|
||||
use function filter_var;
|
||||
use function preg_match;
|
||||
use function strlen;
|
||||
use function trim;
|
||||
use const FILTER_VALIDATE_EMAIL;
|
||||
|
||||
/**
|
||||
* Reflection class for an {@}author tag in a Docblock.
|
||||
|
||||
@@ -41,9 +41,6 @@ final class Covers extends BaseTag implements Factory\StaticMethod
|
||||
$this->description = $description;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public static function create(
|
||||
string $body,
|
||||
?DescriptionFactory $descriptionFactory = null,
|
||||
|
||||
@@ -75,6 +75,7 @@ final class Deprecated extends BaseTag implements Factory\StaticMethod
|
||||
}
|
||||
|
||||
Assert::notNull($descriptionFactory);
|
||||
|
||||
return new static(
|
||||
$matches[1],
|
||||
$descriptionFactory->create($matches[2] ?? '', $context)
|
||||
|
||||
@@ -82,9 +82,6 @@ final class Example implements Tag, Factory\StaticMethod
|
||||
return $this->content;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public static function create(string $body) : ?Tag
|
||||
{
|
||||
// File component: File path in quotes or File URI / Source information
|
||||
|
||||
@@ -39,9 +39,6 @@ final class Link extends BaseTag implements Factory\StaticMethod
|
||||
$this->description = $description;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public static function create(
|
||||
string $body,
|
||||
?DescriptionFactory $descriptionFactory = null,
|
||||
|
||||
@@ -44,7 +44,10 @@ final class Method extends BaseTag implements Factory\StaticMethod
|
||||
/** @var string */
|
||||
private $methodName = '';
|
||||
|
||||
/** @var string[][] */
|
||||
/**
|
||||
* @phpstan-var array<int, array{name: string, type: Type}>
|
||||
* @var array<int, array<string, Type|string>>
|
||||
*/
|
||||
private $arguments = [];
|
||||
|
||||
/** @var bool */
|
||||
@@ -54,9 +57,9 @@ final class Method extends BaseTag implements Factory\StaticMethod
|
||||
private $returnType;
|
||||
|
||||
/**
|
||||
* @param mixed[][] $arguments
|
||||
* @param array<int, array<string, Type|string>> $arguments
|
||||
*
|
||||
* @psalm-param array<int, array<string, string|Type>|string> $arguments
|
||||
* @phpstan-param array<int, array{name: string, type: Type}|string> $arguments
|
||||
*/
|
||||
public function __construct(
|
||||
string $methodName,
|
||||
@@ -78,9 +81,6 @@ final class Method extends BaseTag implements Factory\StaticMethod
|
||||
$this->description = $description;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public static function create(
|
||||
string $body,
|
||||
?TypeResolver $typeResolver = null,
|
||||
@@ -137,7 +137,7 @@ final class Method extends BaseTag implements Factory\StaticMethod
|
||||
return null;
|
||||
}
|
||||
|
||||
[, $static, $returnType, $methodName, $arguments, $description] = $matches;
|
||||
[, $static, $returnType, $methodName, $argumentLines, $description] = $matches;
|
||||
|
||||
$static = $static === 'static';
|
||||
|
||||
@@ -148,9 +148,11 @@ final class Method extends BaseTag implements Factory\StaticMethod
|
||||
$returnType = $typeResolver->resolve($returnType, $context);
|
||||
$description = $descriptionFactory->create($description, $context);
|
||||
|
||||
if ($arguments !== '') {
|
||||
$arguments = explode(',', $arguments);
|
||||
foreach ($arguments as &$argument) {
|
||||
/** @phpstan-var array<int, array{name: string, type: Type}> $arguments */
|
||||
$arguments = [];
|
||||
if ($argumentLines !== '') {
|
||||
$argumentsExploded = explode(',', $argumentLines);
|
||||
foreach ($argumentsExploded as $argument) {
|
||||
$argument = explode(' ', self::stripRestArg(trim($argument)), 2);
|
||||
if ($argument[0][0] === '$') {
|
||||
$argumentName = substr($argument[0], 1);
|
||||
@@ -164,10 +166,8 @@ final class Method extends BaseTag implements Factory\StaticMethod
|
||||
}
|
||||
}
|
||||
|
||||
$argument = ['name' => $argumentName, 'type' => $argumentType];
|
||||
$arguments[] = ['name' => $argumentName, 'type' => $argumentType];
|
||||
}
|
||||
} else {
|
||||
$arguments = [];
|
||||
}
|
||||
|
||||
return new static($methodName, $arguments, $returnType, $static, $description);
|
||||
@@ -182,7 +182,9 @@ final class Method extends BaseTag implements Factory\StaticMethod
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string[][]
|
||||
* @return array<int, array<string, Type|string>>
|
||||
*
|
||||
* @phpstan-return array<int, array{name: string, type: Type}>
|
||||
*/
|
||||
public function getArguments() : array
|
||||
{
|
||||
@@ -223,8 +225,8 @@ final class Method extends BaseTag implements Factory\StaticMethod
|
||||
*
|
||||
* @return mixed[][]
|
||||
*
|
||||
* @psalm-param array<int, array<string, string|Type>|string> $arguments
|
||||
* @psalm-return array<int, array<string, string|Type>> $arguments
|
||||
* @phpstan-param array<int, array{name: string, type: Type}|string> $arguments
|
||||
* @phpstan-return array<int, array{name: string, type: Type}>
|
||||
*/
|
||||
private function filterArguments(array $arguments = []) : array
|
||||
{
|
||||
|
||||
@@ -19,7 +19,6 @@ use phpDocumentor\Reflection\Type;
|
||||
use phpDocumentor\Reflection\TypeResolver;
|
||||
use phpDocumentor\Reflection\Types\Context as TypeContext;
|
||||
use Webmozart\Assert\Assert;
|
||||
use const PREG_SPLIT_DELIM_CAPTURE;
|
||||
use function array_shift;
|
||||
use function array_unshift;
|
||||
use function implode;
|
||||
@@ -27,6 +26,7 @@ use function preg_split;
|
||||
use function strlen;
|
||||
use function strpos;
|
||||
use function substr;
|
||||
use const PREG_SPLIT_DELIM_CAPTURE;
|
||||
|
||||
/**
|
||||
* Reflection class for the {@}param tag in a Docblock.
|
||||
@@ -52,9 +52,6 @@ final class Param extends TagWithType implements Factory\StaticMethod
|
||||
$this->description = $description;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public static function create(
|
||||
string $body,
|
||||
?TypeResolver $typeResolver = null,
|
||||
@@ -69,6 +66,7 @@ final class Param extends TagWithType implements Factory\StaticMethod
|
||||
|
||||
$type = null;
|
||||
$parts = preg_split('/(\s+)/Su', $body, 2, PREG_SPLIT_DELIM_CAPTURE);
|
||||
Assert::isArray($parts);
|
||||
$variableName = '';
|
||||
$isVariadic = false;
|
||||
|
||||
|
||||
@@ -19,7 +19,6 @@ use phpDocumentor\Reflection\Type;
|
||||
use phpDocumentor\Reflection\TypeResolver;
|
||||
use phpDocumentor\Reflection\Types\Context as TypeContext;
|
||||
use Webmozart\Assert\Assert;
|
||||
use const PREG_SPLIT_DELIM_CAPTURE;
|
||||
use function array_shift;
|
||||
use function array_unshift;
|
||||
use function implode;
|
||||
@@ -27,6 +26,7 @@ use function preg_split;
|
||||
use function strlen;
|
||||
use function strpos;
|
||||
use function substr;
|
||||
use const PREG_SPLIT_DELIM_CAPTURE;
|
||||
|
||||
/**
|
||||
* Reflection class for a {@}property tag in a Docblock.
|
||||
@@ -46,9 +46,6 @@ final class Property extends TagWithType implements Factory\StaticMethod
|
||||
$this->description = $description;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public static function create(
|
||||
string $body,
|
||||
?TypeResolver $typeResolver = null,
|
||||
@@ -62,7 +59,8 @@ final class Property extends TagWithType implements Factory\StaticMethod
|
||||
[$firstPart, $body] = self::extractTypeFromBody($body);
|
||||
$type = null;
|
||||
$parts = preg_split('/(\s+)/Su', $body, 2, PREG_SPLIT_DELIM_CAPTURE);
|
||||
$variableName = '';
|
||||
Assert::isArray($parts);
|
||||
$variableName = '';
|
||||
|
||||
// if the first item that is encountered is not a variable; it is a type
|
||||
if ($firstPart && (strlen($firstPart) > 0) && ($firstPart[0] !== '$')) {
|
||||
|
||||
@@ -19,7 +19,6 @@ use phpDocumentor\Reflection\Type;
|
||||
use phpDocumentor\Reflection\TypeResolver;
|
||||
use phpDocumentor\Reflection\Types\Context as TypeContext;
|
||||
use Webmozart\Assert\Assert;
|
||||
use const PREG_SPLIT_DELIM_CAPTURE;
|
||||
use function array_shift;
|
||||
use function array_unshift;
|
||||
use function implode;
|
||||
@@ -27,6 +26,7 @@ use function preg_split;
|
||||
use function strlen;
|
||||
use function strpos;
|
||||
use function substr;
|
||||
use const PREG_SPLIT_DELIM_CAPTURE;
|
||||
|
||||
/**
|
||||
* Reflection class for a {@}property-read tag in a Docblock.
|
||||
@@ -46,9 +46,6 @@ final class PropertyRead extends TagWithType implements Factory\StaticMethod
|
||||
$this->description = $description;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public static function create(
|
||||
string $body,
|
||||
?TypeResolver $typeResolver = null,
|
||||
@@ -62,7 +59,8 @@ final class PropertyRead extends TagWithType implements Factory\StaticMethod
|
||||
[$firstPart, $body] = self::extractTypeFromBody($body);
|
||||
$type = null;
|
||||
$parts = preg_split('/(\s+)/Su', $body, 2, PREG_SPLIT_DELIM_CAPTURE);
|
||||
$variableName = '';
|
||||
Assert::isArray($parts);
|
||||
$variableName = '';
|
||||
|
||||
// if the first item that is encountered is not a variable; it is a type
|
||||
if ($firstPart && (strlen($firstPart) > 0) && ($firstPart[0] !== '$')) {
|
||||
|
||||
@@ -19,7 +19,6 @@ use phpDocumentor\Reflection\Type;
|
||||
use phpDocumentor\Reflection\TypeResolver;
|
||||
use phpDocumentor\Reflection\Types\Context as TypeContext;
|
||||
use Webmozart\Assert\Assert;
|
||||
use const PREG_SPLIT_DELIM_CAPTURE;
|
||||
use function array_shift;
|
||||
use function array_unshift;
|
||||
use function implode;
|
||||
@@ -27,6 +26,7 @@ use function preg_split;
|
||||
use function strlen;
|
||||
use function strpos;
|
||||
use function substr;
|
||||
use const PREG_SPLIT_DELIM_CAPTURE;
|
||||
|
||||
/**
|
||||
* Reflection class for a {@}property-write tag in a Docblock.
|
||||
@@ -46,9 +46,6 @@ final class PropertyWrite extends TagWithType implements Factory\StaticMethod
|
||||
$this->description = $description;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public static function create(
|
||||
string $body,
|
||||
?TypeResolver $typeResolver = null,
|
||||
@@ -62,7 +59,8 @@ final class PropertyWrite extends TagWithType implements Factory\StaticMethod
|
||||
[$firstPart, $body] = self::extractTypeFromBody($body);
|
||||
$type = null;
|
||||
$parts = preg_split('/(\s+)/Su', $body, 2, PREG_SPLIT_DELIM_CAPTURE);
|
||||
$variableName = '';
|
||||
Assert::isArray($parts);
|
||||
$variableName = '';
|
||||
|
||||
// if the first item that is encountered is not a variable; it is a type
|
||||
if ($firstPart && (strlen($firstPart) > 0) && ($firstPart[0] !== '$')) {
|
||||
|
||||
@@ -32,9 +32,6 @@ final class Return_ extends TagWithType implements Factory\StaticMethod
|
||||
$this->description = $description;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public static function create(
|
||||
string $body,
|
||||
?TypeResolver $typeResolver = null,
|
||||
|
||||
@@ -44,9 +44,6 @@ final class See extends BaseTag implements Factory\StaticMethod
|
||||
$this->description = $description;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public static function create(
|
||||
string $body,
|
||||
?FqsenResolver $typeResolver = null,
|
||||
|
||||
@@ -69,6 +69,7 @@ final class Since extends BaseTag implements Factory\StaticMethod
|
||||
}
|
||||
|
||||
Assert::notNull($descriptionFactory);
|
||||
|
||||
return new static(
|
||||
$matches[1],
|
||||
$descriptionFactory->create($matches[2] ?? '', $context)
|
||||
|
||||
@@ -47,9 +47,6 @@ final class Source extends BaseTag implements Factory\StaticMethod
|
||||
$this->description = $description;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public static function create(
|
||||
string $body,
|
||||
?DescriptionFactory $descriptionFactory = null,
|
||||
|
||||
@@ -32,9 +32,6 @@ final class Throws extends TagWithType implements Factory\StaticMethod
|
||||
$this->description = $description;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public static function create(
|
||||
string $body,
|
||||
?TypeResolver $typeResolver = null,
|
||||
|
||||
@@ -41,9 +41,6 @@ final class Uses extends BaseTag implements Factory\StaticMethod
|
||||
$this->description = $description;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public static function create(
|
||||
string $body,
|
||||
?FqsenResolver $resolver = null,
|
||||
|
||||
@@ -19,7 +19,6 @@ use phpDocumentor\Reflection\Type;
|
||||
use phpDocumentor\Reflection\TypeResolver;
|
||||
use phpDocumentor\Reflection\Types\Context as TypeContext;
|
||||
use Webmozart\Assert\Assert;
|
||||
use const PREG_SPLIT_DELIM_CAPTURE;
|
||||
use function array_shift;
|
||||
use function array_unshift;
|
||||
use function implode;
|
||||
@@ -27,6 +26,7 @@ use function preg_split;
|
||||
use function strlen;
|
||||
use function strpos;
|
||||
use function substr;
|
||||
use const PREG_SPLIT_DELIM_CAPTURE;
|
||||
|
||||
/**
|
||||
* Reflection class for a {@}var tag in a Docblock.
|
||||
@@ -46,9 +46,6 @@ final class Var_ extends TagWithType implements Factory\StaticMethod
|
||||
$this->description = $description;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public static function create(
|
||||
string $body,
|
||||
?TypeResolver $typeResolver = null,
|
||||
@@ -61,7 +58,8 @@ final class Var_ extends TagWithType implements Factory\StaticMethod
|
||||
|
||||
[$firstPart, $body] = self::extractTypeFromBody($body);
|
||||
|
||||
$parts = preg_split('/(\s+)/Su', $body, 2, PREG_SPLIT_DELIM_CAPTURE);
|
||||
$parts = preg_split('/(\s+)/Su', $body, 2, PREG_SPLIT_DELIM_CAPTURE);
|
||||
Assert::isArray($parts);
|
||||
$type = null;
|
||||
$variableName = '';
|
||||
|
||||
@@ -102,7 +100,7 @@ final class Var_ extends TagWithType implements Factory\StaticMethod
|
||||
public function __toString() : string
|
||||
{
|
||||
return ($this->type ? $this->type . ' ' : '')
|
||||
. (empty($this->variableName) ? '' : ('$' . $this->variableName))
|
||||
. (empty($this->variableName) ? '' : '$' . $this->variableName)
|
||||
. ($this->description ? ' ' . $this->description : '');
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user