2017-02-10 02:35:17 +01:00
|
|
|
<?php
|
2018-11-06 03:57:36 +01:00
|
|
|
namespace Psalm\Internal\Scanner;
|
2017-02-10 02:35:17 +01:00
|
|
|
|
2021-12-04 03:37:19 +01:00
|
|
|
use PhpParser\Node\Stmt\ClassMethod;
|
|
|
|
|
2018-12-02 00:37:49 +01:00
|
|
|
/**
|
|
|
|
* @internal
|
|
|
|
*/
|
2017-02-10 02:35:17 +01:00
|
|
|
class ClassLikeDocblockComment
|
|
|
|
{
|
|
|
|
/**
|
|
|
|
* Whether or not the class is deprecated
|
2017-05-27 02:16:18 +02:00
|
|
|
*
|
|
|
|
* @var bool
|
2017-02-10 02:35:17 +01:00
|
|
|
*/
|
|
|
|
public $deprecated = false;
|
|
|
|
|
2018-12-02 00:37:49 +01:00
|
|
|
/**
|
|
|
|
* Whether or not the class is internal
|
|
|
|
*
|
|
|
|
* @var bool
|
|
|
|
*/
|
|
|
|
public $internal = false;
|
|
|
|
|
2020-06-13 06:29:59 +02:00
|
|
|
/**
|
|
|
|
* Whether or not the class is final
|
|
|
|
*
|
|
|
|
* @var bool
|
|
|
|
*/
|
|
|
|
public $final = false;
|
|
|
|
|
2019-05-10 00:33:27 +02:00
|
|
|
/**
|
|
|
|
* If set, the class is internal to the given namespace.
|
|
|
|
*
|
|
|
|
* @var null|string
|
|
|
|
*/
|
2021-09-26 23:24:07 +02:00
|
|
|
public $psalm_internal;
|
2019-05-10 00:33:27 +02:00
|
|
|
|
2020-08-05 21:49:19 +02:00
|
|
|
/**
|
|
|
|
* @var string[]
|
|
|
|
*/
|
|
|
|
public $mixins = [];
|
|
|
|
|
2017-02-10 02:35:17 +01:00
|
|
|
/**
|
2019-11-30 07:02:23 +01:00
|
|
|
* @var array<int, array{string, ?string, ?string, bool, int}>
|
2017-02-10 02:35:17 +01:00
|
|
|
*/
|
2018-12-18 05:29:27 +01:00
|
|
|
public $templates = [];
|
2017-05-05 00:35:05 +02:00
|
|
|
|
2018-05-28 23:26:43 +02:00
|
|
|
/**
|
|
|
|
* @var array<int, string>
|
|
|
|
*/
|
2019-01-10 22:59:44 +01:00
|
|
|
public $template_extends = [];
|
2018-05-28 23:26:43 +02:00
|
|
|
|
2019-01-28 03:00:27 +01:00
|
|
|
/**
|
|
|
|
* @var array<int, string>
|
|
|
|
*/
|
|
|
|
public $template_implements = [];
|
|
|
|
|
2020-04-03 04:38:10 +02:00
|
|
|
/**
|
|
|
|
* @var ?string
|
|
|
|
*/
|
2021-09-26 23:24:07 +02:00
|
|
|
public $yield;
|
2020-04-03 04:38:10 +02:00
|
|
|
|
2017-05-05 00:35:05 +02:00
|
|
|
/**
|
2017-12-14 20:22:27 +01:00
|
|
|
* @var array<int, array{name:string, type:string, tag:string, line_number:int}>
|
2017-05-05 00:35:05 +02:00
|
|
|
*/
|
|
|
|
public $properties = [];
|
2017-09-13 17:32:13 +02:00
|
|
|
|
2018-04-22 04:13:10 +02:00
|
|
|
/**
|
2021-12-04 03:37:19 +01:00
|
|
|
* @var array<int, ClassMethod>
|
2018-04-22 04:13:10 +02:00
|
|
|
*/
|
|
|
|
public $methods = [];
|
|
|
|
|
2017-11-17 02:47:58 +01:00
|
|
|
/**
|
|
|
|
* @var bool
|
|
|
|
*/
|
|
|
|
public $sealed_properties = false;
|
|
|
|
|
2018-04-22 06:40:30 +02:00
|
|
|
/**
|
|
|
|
* @var bool
|
|
|
|
*/
|
|
|
|
public $sealed_methods = false;
|
|
|
|
|
2018-11-25 00:31:00 +01:00
|
|
|
/**
|
|
|
|
* @var bool
|
|
|
|
*/
|
2018-11-25 17:11:33 +01:00
|
|
|
public $override_property_visibility = false;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @var bool
|
|
|
|
*/
|
|
|
|
public $override_method_visibility = false;
|
2018-11-25 00:31:00 +01:00
|
|
|
|
2019-08-30 18:36:35 +02:00
|
|
|
/**
|
|
|
|
* @var bool
|
|
|
|
*/
|
|
|
|
public $mutation_free = false;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @var bool
|
|
|
|
*/
|
|
|
|
public $external_mutation_free = false;
|
|
|
|
|
2020-06-19 07:22:51 +02:00
|
|
|
/**
|
|
|
|
* @var bool
|
|
|
|
*/
|
|
|
|
public $taint_specialize = false;
|
|
|
|
|
2017-09-13 17:32:13 +02:00
|
|
|
/**
|
|
|
|
* @var array<int, string>
|
|
|
|
*/
|
|
|
|
public $suppressed_issues = [];
|
2020-05-14 06:41:50 +02:00
|
|
|
|
|
|
|
/**
|
2020-08-17 04:53:53 +02:00
|
|
|
* @var list<array{line_number:int,start_offset:int,end_offset:int,parts:list<string>}>
|
2020-05-14 06:41:50 +02:00
|
|
|
*/
|
|
|
|
public $imported_types = [];
|
2020-08-06 01:39:27 +02:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @var bool
|
|
|
|
*/
|
|
|
|
public $consistent_constructor = false;
|
2020-09-13 22:40:31 +02:00
|
|
|
|
2021-04-10 19:16:14 +02:00
|
|
|
/**
|
|
|
|
* @var bool
|
|
|
|
*/
|
|
|
|
public $consistent_templates = false;
|
|
|
|
|
2020-09-13 22:40:31 +02:00
|
|
|
/** @var bool */
|
|
|
|
public $stub_override = false;
|
2020-10-19 21:08:18 +02:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @var null|string
|
|
|
|
*/
|
|
|
|
public $extension_requirement;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @var array<int, string>
|
|
|
|
*/
|
|
|
|
public $implementation_requirements = [];
|
2021-02-24 16:14:04 +01:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @var ?string
|
|
|
|
*/
|
|
|
|
public $description;
|
2017-02-10 02:35:17 +01:00
|
|
|
}
|