From dd0d8300b1505cf909734215450ab6d75bf71d12 Mon Sep 17 00:00:00 2001 From: Jack Worman Date: Sun, 11 Dec 2022 16:26:05 -0600 Subject: [PATCH] Use rector to add property typehints --- src/Psalm/CodeLocation.php | 24 +++---- src/Psalm/Codebase.php | 5 +- src/Psalm/Config.php | 36 +++++------ src/Psalm/Config/ErrorLevelFileFilter.php | 5 +- src/Psalm/Config/IssueHandler.php | 7 +- src/Psalm/Config/ProjectFileFilter.php | 5 +- src/Psalm/FileBasedPluginAdapter.php | 9 +-- src/Psalm/Internal/Analyzer/FileAnalyzer.php | 23 +++---- .../Analyzer/FunctionLikeAnalyzer.php | 5 +- .../Internal/Analyzer/NamespaceAnalyzer.php | 10 +-- .../Internal/Analyzer/ProjectAnalyzer.php | 26 +++----- .../Statements/UnusedAssignmentRemover.php | 2 +- .../Internal/Analyzer/StatementsAnalyzer.php | 20 ++---- src/Psalm/Internal/Analyzer/TraitAnalyzer.php | 5 +- src/Psalm/Internal/Codebase/Analyzer.php | 43 ++++--------- .../ClassConstantByWildcardResolver.php | 5 +- src/Psalm/Internal/Codebase/ClassLikes.php | 26 ++------ src/Psalm/Internal/Codebase/Functions.php | 10 +-- .../Codebase/InternalCallMapHandler.php | 14 ++-- src/Psalm/Internal/Codebase/Methods.php | 10 +-- src/Psalm/Internal/Codebase/Populator.php | 25 ++------ src/Psalm/Internal/Codebase/Properties.php | 8 +-- src/Psalm/Internal/Codebase/PropertyMap.php | 2 +- src/Psalm/Internal/Codebase/Reflection.php | 10 +-- src/Psalm/Internal/Codebase/Scanner.php | 40 +++--------- .../Internal/Codebase/TaintFlowGraph.php | 8 +-- .../Internal/Codebase/VariableUseGraph.php | 4 +- src/Psalm/Internal/ErrorHandler.php | 6 +- src/Psalm/Internal/EventDispatcher.php | 4 +- .../ClassDocblockManipulator.php | 17 ++--- .../FunctionDocblockManipulator.php | 51 ++++++--------- .../PropertyDocblockManipulator.php | 41 ++++-------- src/Psalm/Internal/Fork/Pool.php | 10 ++- src/Psalm/Internal/Fork/PsalmRestarter.php | 7 +- src/Psalm/Internal/IncludeCollector.php | 2 +- .../LanguageServer/Client/TextDocument.php | 10 +-- .../LanguageServer/LanguageClient.php | 4 +- .../LanguageServer/ProtocolStreamReader.php | 12 ++-- .../LanguageServer/ProtocolStreamWriter.php | 5 +- .../PhpVisitor/ConditionCloningVisitor.php | 2 +- .../PhpVisitor/NodeCleanerVisitor.php | 2 +- .../PhpVisitor/OffsetShifterVisitor.php | 8 +-- .../PhpVisitor/ParamReplacementVisitor.php | 12 ++-- .../PhpVisitor/PartialParserVisitor.php | 28 ++++---- .../Reflector/ClassLikeNodeScanner.php | 39 +++-------- .../Reflector/FunctionLikeNodeScanner.php | 39 +++-------- .../Internal/PhpVisitor/ReflectorVisitor.php | 64 ++++++------------- .../PhpVisitor/SimpleNameResolver.php | 9 +-- src/Psalm/Internal/PhpVisitor/TraitFinder.php | 4 +- .../PhpVisitor/TypeMappingVisitor.php | 4 +- .../PluginManager/Command/DisableCommand.php | 3 +- .../PluginManager/Command/EnableCommand.php | 3 +- .../PluginManager/Command/ShowCommand.php | 3 +- .../Internal/PluginManager/ComposerLock.php | 2 +- .../Internal/PluginManager/ConfigFile.php | 12 ++-- .../Internal/PluginManager/PluginList.php | 8 +-- .../PluginManager/PluginListFactory.php | 6 +- .../ClassLikeStorageCacheProvider.php | 6 +- .../DynamicFunctionStorageProvider.php | 2 +- .../Provider/FileReferenceProvider.php | 9 +-- .../Provider/FileStorageCacheProvider.php | 6 +- .../Provider/FunctionExistenceProvider.php | 2 +- .../Provider/FunctionParamsProvider.php | 2 +- .../Provider/FunctionReturnTypeProvider.php | 2 +- .../Provider/MethodExistenceProvider.php | 2 +- .../Provider/MethodParamsProvider.php | 2 +- .../Provider/MethodReturnTypeProvider.php | 2 +- .../Provider/MethodVisibilityProvider.php | 2 +- .../Internal/Provider/ParserCacheProvider.php | 11 +--- .../Provider/ProjectCacheProvider.php | 8 +-- .../Provider/PropertyExistenceProvider.php | 2 +- .../Provider/PropertyTypeProvider.php | 2 +- .../Provider/PropertyVisibilityProvider.php | 2 +- .../Internal/Provider/StatementsProvider.php | 33 +++------- src/Psalm/Internal/Scanner/ParsedDocblock.php | 5 +- src/Psalm/Internal/Type/ParseTreeCreator.php | 8 +-- .../CanContainObjectTypeVisitor.php | 12 +--- .../TypeVisitor/ContainsClassLikeVisitor.php | 7 +- .../TypeVisitor/ContainsLiteralVisitor.php | 5 +- .../TypeVisitor/TemplateTypeCollector.php | 2 +- .../Internal/TypeVisitor/TypeChecker.php | 34 +++------- src/Psalm/IssueBuffer.php | 2 +- .../Event/AddRemoveTaintsEvent.php | 20 ++---- .../EventHandler/Event/AfterAnalysisEvent.php | 17 ++--- .../Event/AfterClassLikeAnalysisEvent.php | 22 ++----- .../AfterClassLikeExistenceCheckEvent.php | 22 ++----- .../Event/AfterClassLikeVisitEvent.php | 22 ++----- .../Event/AfterCodebasePopulatedEvent.php | 5 +- .../AfterEveryFunctionCallAnalysisEvent.php | 25 ++------ .../Event/AfterExpressionAnalysisEvent.php | 22 ++----- .../Event/AfterFileAnalysisEvent.php | 22 ++----- .../Event/AfterFunctionCallAnalysisEvent.php | 29 ++------- .../Event/AfterFunctionLikeAnalysisEvent.php | 32 ++-------- .../Event/AfterMethodCallAnalysisEvent.php | 37 +++-------- .../Event/AfterStatementAnalysisEvent.php | 22 ++----- .../Event/BeforeFileAnalysisEvent.php | 20 ++---- .../Event/FunctionExistenceProviderEvent.php | 10 +-- .../Event/FunctionParamsProviderEvent.php | 22 ++----- .../Event/FunctionReturnTypeProviderEvent.php | 27 +++----- .../Event/MethodExistenceProviderEvent.php | 20 ++---- .../Event/MethodParamsProviderEvent.php | 27 ++------ .../Event/MethodReturnTypeProviderEvent.php | 31 +++------ .../Event/MethodVisibilityProviderEvent.php | 25 ++------ .../Event/PropertyExistenceProviderEvent.php | 30 ++------- .../Event/PropertyTypeProviderEvent.php | 25 ++------ .../Event/PropertyVisibilityProviderEvent.php | 30 ++------- .../Event/StringInterpreterEvent.php | 5 +- src/Psalm/PluginFileExtensionsSocket.php | 11 ++-- src/Psalm/PluginRegistrationSocket.php | 6 +- src/Psalm/Progress/DefaultProgress.php | 2 +- src/Psalm/Type/Reconciler.php | 2 +- 111 files changed, 435 insertions(+), 1129 deletions(-) diff --git a/src/Psalm/CodeLocation.php b/src/Psalm/CodeLocation.php index 664827f94ac..1b131a1ac1e 100644 --- a/src/Psalm/CodeLocation.php +++ b/src/Psalm/CodeLocation.php @@ -42,8 +42,7 @@ class CodeLocation /** @var int */ public $raw_line_number; - /** @var int */ - private $end_line_number = -1; + private int $end_line_number = -1; /** @var int */ public $raw_file_start; @@ -63,23 +62,17 @@ class CodeLocation /** @var int */ protected $preview_start; - /** @var int */ - private $preview_end = -1; + private int $preview_end = -1; - /** @var int */ - private $selection_start = -1; + private int $selection_start = -1; - /** @var int */ - private $selection_end = -1; + private int $selection_end = -1; - /** @var int */ - private $column_from = -1; + private int $column_from = -1; - /** @var int */ - private $column_to = -1; + private int $column_to = -1; - /** @var string */ - private $snippet = ''; + private string $snippet = ''; /** @var null|string */ private $text; @@ -96,8 +89,7 @@ class CodeLocation /** @var null|int */ private $regex_type; - /** @var bool */ - private $have_recalculated = false; + private bool $have_recalculated = false; /** @var null|CodeLocation */ public $previous_location; diff --git a/src/Psalm/Codebase.php b/src/Psalm/Codebase.php index bc93e434df5..3e9234fed7f 100644 --- a/src/Psalm/Codebase.php +++ b/src/Psalm/Codebase.php @@ -146,10 +146,7 @@ final class Codebase */ public $statements_provider; - /** - * @var Progress - */ - private $progress; + private Progress $progress; /** * @var array diff --git a/src/Psalm/Config.php b/src/Psalm/Config.php index ee172a4300a..821fdd80d94 100644 --- a/src/Psalm/Config.php +++ b/src/Psalm/Config.php @@ -245,55 +245,53 @@ class Config /** * The PHP version to assume as declared in the config file - * - * @var string|null */ - private $configured_php_version; + private ?string $configured_php_version = null; /** * @var array */ - private $file_extensions = ['php']; + private array $file_extensions = ['php']; /** * @var array> */ - private $filetype_scanners = []; + private array $filetype_scanners = []; /** * @var array> */ - private $filetype_analyzers = []; + private array $filetype_analyzers = []; /** * @var array */ - private $filetype_scanner_paths = []; + private array $filetype_scanner_paths = []; /** * @var array */ - private $filetype_analyzer_paths = []; + private array $filetype_analyzer_paths = []; /** * @var array */ - private $issue_handlers = []; + private array $issue_handlers = []; /** * @var array */ - private $mock_classes = []; + private array $mock_classes = []; /** * @var array */ - private $preloaded_stub_files = []; + private array $preloaded_stub_files = []; /** * @var array */ - private $stub_files = []; + private array $stub_files = []; /** * @var bool @@ -503,7 +501,7 @@ class Config /** * @var array */ - private $plugin_classes = []; + private array $plugin_classes = []; /** * @var bool @@ -516,13 +514,12 @@ class Config public $allow_named_arg_calls = true; /** @var array */ - private $predefined_constants = []; + private array $predefined_constants = []; /** @var array */ - private $predefined_functions = []; + private array $predefined_functions = []; - /** @var ClassLoader|null */ - private $composer_class_loader; + private ?ClassLoader $composer_class_loader = null; /** * @var string @@ -550,8 +547,7 @@ class Config */ public $max_string_length = 1_000; - /** @var ?IncludeCollector */ - private $include_collector; + private ?IncludeCollector $include_collector = null; /** * @var TaintAnalysisFileFilter|null @@ -631,7 +627,7 @@ class Config /** * @var array */ - private $plugins = []; + private array $plugins = []; /** @internal */ protected function __construct() diff --git a/src/Psalm/Config/ErrorLevelFileFilter.php b/src/Psalm/Config/ErrorLevelFileFilter.php index b094ccded88..7e9de88925e 100644 --- a/src/Psalm/Config/ErrorLevelFileFilter.php +++ b/src/Psalm/Config/ErrorLevelFileFilter.php @@ -11,10 +11,7 @@ /** @internal */ final class ErrorLevelFileFilter extends FileFilter { - /** - * @var string - */ - private $error_level = ''; + private string $error_level = ''; /** * @return static diff --git a/src/Psalm/Config/IssueHandler.php b/src/Psalm/Config/IssueHandler.php index 1fbe8b7489b..a35300ca327 100644 --- a/src/Psalm/Config/IssueHandler.php +++ b/src/Psalm/Config/IssueHandler.php @@ -19,15 +19,12 @@ /** @internal */ final class IssueHandler { - /** - * @var string - */ - private $error_level = Config::REPORT_ERROR; + private string $error_level = Config::REPORT_ERROR; /** * @var array */ - private $custom_levels = []; + private array $custom_levels = []; public static function loadFromXMLElement(SimpleXMLElement $e, string $base_dir): IssueHandler { diff --git a/src/Psalm/Config/ProjectFileFilter.php b/src/Psalm/Config/ProjectFileFilter.php index 8c4c97bb79b..8513f98ff7f 100644 --- a/src/Psalm/Config/ProjectFileFilter.php +++ b/src/Psalm/Config/ProjectFileFilter.php @@ -11,10 +11,7 @@ /** @internal */ final class ProjectFileFilter extends FileFilter { - /** - * @var ProjectFileFilter|null - */ - private $file_filter; + private ?ProjectFileFilter $file_filter = null; /** * @return static diff --git a/src/Psalm/FileBasedPluginAdapter.php b/src/Psalm/FileBasedPluginAdapter.php index a1dd2023808..107ded198ab 100644 --- a/src/Psalm/FileBasedPluginAdapter.php +++ b/src/Psalm/FileBasedPluginAdapter.php @@ -19,14 +19,11 @@ /** @internal */ final class FileBasedPluginAdapter implements PluginEntryPointInterface { - /** @var string */ - private $path; + private string $path; - /** @var Codebase */ - private $codebase; + private Codebase $codebase; - /** @var Config */ - private $config; + private Config $config; public function __construct(string $path, Config $config, Codebase $codebase) { diff --git a/src/Psalm/Internal/Analyzer/FileAnalyzer.php b/src/Psalm/Internal/Analyzer/FileAnalyzer.php index 9e8074847fe..fc8b48aa70f 100644 --- a/src/Psalm/Internal/Analyzer/FileAnalyzer.php +++ b/src/Psalm/Internal/Analyzer/FileAnalyzer.php @@ -67,32 +67,32 @@ class FileAnalyzer extends SourceAnalyzer /** * @var array */ - private $required_file_paths = []; + private array $required_file_paths = []; /** * @var array */ - private $parent_file_paths = []; + private array $parent_file_paths = []; /** * @var array */ - private $suppressed_issues = []; + private array $suppressed_issues = []; /** * @var array> */ - private $namespace_aliased_classes = []; + private array $namespace_aliased_classes = []; /** * @var array> */ - private $namespace_aliased_classes_flipped = []; + private array $namespace_aliased_classes_flipped = []; /** * @var array> */ - private $namespace_aliased_classes_flipped_replaceable = []; + private array $namespace_aliased_classes_flipped_replaceable = []; /** * @var array @@ -119,16 +119,11 @@ class FileAnalyzer extends SourceAnalyzer */ public $codebase; - /** - * @var int - */ - private $first_statement_offset = -1; + private int $first_statement_offset = -1; - /** @var ?NodeDataProvider */ - private $node_data; + private ?NodeDataProvider $node_data = null; - /** @var ?Union */ - private $return_type; + private ?Union $return_type = null; public function __construct(ProjectAnalyzer $project_analyzer, string $file_path, string $file_name) { diff --git a/src/Psalm/Internal/Analyzer/FunctionLikeAnalyzer.php b/src/Psalm/Internal/Analyzer/FunctionLikeAnalyzer.php index 5d4f4ca2b08..029edda5304 100644 --- a/src/Psalm/Internal/Analyzer/FunctionLikeAnalyzer.php +++ b/src/Psalm/Internal/Analyzer/FunctionLikeAnalyzer.php @@ -116,10 +116,7 @@ abstract class FunctionLikeAnalyzer extends SourceAnalyzer */ protected $return_vars_possibly_in_scope = []; - /** - * @var Union|null - */ - private $local_return_type; + private ?Union $local_return_type = null; /** * @var array diff --git a/src/Psalm/Internal/Analyzer/NamespaceAnalyzer.php b/src/Psalm/Internal/Analyzer/NamespaceAnalyzer.php index de86b5b650d..6ee0ea96933 100644 --- a/src/Psalm/Internal/Analyzer/NamespaceAnalyzer.php +++ b/src/Psalm/Internal/Analyzer/NamespaceAnalyzer.php @@ -33,15 +33,9 @@ class NamespaceAnalyzer extends SourceAnalyzer */ protected $source; - /** - * @var Namespace_ - */ - private $namespace; + private Namespace_ $namespace; - /** - * @var string - */ - private $namespace_name; + private string $namespace_name; /** * A lookup table for public namespace constants diff --git a/src/Psalm/Internal/Analyzer/ProjectAnalyzer.php b/src/Psalm/Internal/Analyzer/ProjectAnalyzer.php index b9bed7eb41e..07f4300fcf7 100644 --- a/src/Psalm/Internal/Analyzer/ProjectAnalyzer.php +++ b/src/Psalm/Internal/Analyzer/ProjectAnalyzer.php @@ -111,10 +111,8 @@ class ProjectAnalyzer { /** * Cached config - * - * @var Config */ - private $config; + private Config $config; /** * @var self @@ -123,25 +121,19 @@ class ProjectAnalyzer /** * An object representing everything we know about the code - * - * @var Codebase */ - private $codebase; + private Codebase $codebase; - /** @var FileProvider */ - private $file_provider; + private FileProvider $file_provider; - /** @var ClassLikeStorageProvider */ - private $classlike_storage_provider; + private ClassLikeStorageProvider $classlike_storage_provider; - /** @var ?ParserCacheProvider */ - private $parser_cache_provider; + private ?ParserCacheProvider $parser_cache_provider; /** @var ?ProjectCacheProvider */ public $project_cache_provider; - /** @var FileReferenceProvider */ - private $file_reference_provider; + private FileReferenceProvider $file_reference_provider; /** * @var Progress @@ -169,7 +161,7 @@ class ProjectAnalyzer /** * @var array */ - private $issues_to_fix = []; + private array $issues_to_fix = []; /** * @var bool @@ -204,12 +196,12 @@ class ProjectAnalyzer /** * @var array */ - private $project_files = []; + private array $project_files = []; /** * @var array */ - private $extra_files = []; + private array $extra_files = []; /** * @var array diff --git a/src/Psalm/Internal/Analyzer/Statements/UnusedAssignmentRemover.php b/src/Psalm/Internal/Analyzer/Statements/UnusedAssignmentRemover.php index 3f6e50e81a7..2d5895885f1 100644 --- a/src/Psalm/Internal/Analyzer/Statements/UnusedAssignmentRemover.php +++ b/src/Psalm/Internal/Analyzer/Statements/UnusedAssignmentRemover.php @@ -27,7 +27,7 @@ class UnusedAssignmentRemover /** * @var array */ - private $removed_unref_vars = []; + private array $removed_unref_vars = []; /** * @param array $stmts diff --git a/src/Psalm/Internal/Analyzer/StatementsAnalyzer.php b/src/Psalm/Internal/Analyzer/StatementsAnalyzer.php index 8aba70acd41..4ab1911e3e4 100644 --- a/src/Psalm/Internal/Analyzer/StatementsAnalyzer.php +++ b/src/Psalm/Internal/Analyzer/StatementsAnalyzer.php @@ -112,44 +112,38 @@ class StatementsAnalyzer extends SourceAnalyzer /** * @var array */ - private $all_vars = []; + private array $all_vars = []; /** * @var array */ - private $var_branch_points = []; + private array $var_branch_points = []; /** * Possibly undefined variables should be initialised if we're altering code * * @var array|null */ - private $vars_to_initialize; + private ?array $vars_to_initialize = null; /** * @var array */ - private $function_analyzers = []; + private array $function_analyzers = []; /** * @var array */ - private $unused_var_locations = []; + private array $unused_var_locations = []; /** * @var array */ public $byref_uses = []; - /** - * @var ParsedDocblock|null - */ - private $parsed_docblock; + private ?ParsedDocblock $parsed_docblock = null; - /** - * @var ?string - */ - private $fake_this_class; + private ?string $fake_this_class = null; /** @var NodeDataProvider */ public $node_data; diff --git a/src/Psalm/Internal/Analyzer/TraitAnalyzer.php b/src/Psalm/Internal/Analyzer/TraitAnalyzer.php index ac3222dac23..f5a71a5ce42 100644 --- a/src/Psalm/Internal/Analyzer/TraitAnalyzer.php +++ b/src/Psalm/Internal/Analyzer/TraitAnalyzer.php @@ -13,10 +13,7 @@ */ class TraitAnalyzer extends ClassLikeAnalyzer { - /** - * @var Aliases - */ - private $aliases; + private Aliases $aliases; public function __construct( Trait_ $class, diff --git a/src/Psalm/Internal/Codebase/Analyzer.php b/src/Psalm/Internal/Codebase/Analyzer.php index 1239d28ed27..c3660975bac 100644 --- a/src/Psalm/Internal/Codebase/Analyzer.php +++ b/src/Psalm/Internal/Codebase/Analyzer.php @@ -97,25 +97,13 @@ */ class Analyzer { - /** - * @var Config - */ - private $config; + private Config $config; - /** - * @var FileProvider - */ - private $file_provider; + private FileProvider $file_provider; - /** - * @var FileStorageProvider - */ - private $file_storage_provider; + private FileStorageProvider $file_storage_provider; - /** - * @var Progress - */ - private $progress; + private Progress $progress; /** * Used to store counts of mixed vs non-mixed variables @@ -129,26 +117,23 @@ class Analyzer * * @var array> */ - private $mixed_member_names = []; + private array $mixed_member_names = []; - /** - * @var bool - */ - private $count_mixed = true; + private bool $count_mixed = true; /** * Used to store debug performance data * * @var array */ - private $function_timings = []; + private array $function_timings = []; /** * We analyze more files than we necessarily report errors in * * @var array */ - private $files_to_analyze = []; + private array $files_to_analyze = []; /** * We can show analysis results on more files than we analyze @@ -163,32 +148,32 @@ class Analyzer * * @var array|null */ - private $files_to_update; + private ?array $files_to_update = null; /** * @var array> */ - private $analyzed_methods = []; + private array $analyzed_methods = []; /** * @var array> */ - private $existing_issues = []; + private array $existing_issues = []; /** * @var array> */ - private $reference_map = []; + private array $reference_map = []; /** * @var array> */ - private $type_map = []; + private array $type_map = []; /** * @var array> */ - private $argument_map = []; + private array $argument_map = []; /** * @var array> diff --git a/src/Psalm/Internal/Codebase/ClassConstantByWildcardResolver.php b/src/Psalm/Internal/Codebase/ClassConstantByWildcardResolver.php index d3863440c07..97d3931b099 100644 --- a/src/Psalm/Internal/Codebase/ClassConstantByWildcardResolver.php +++ b/src/Psalm/Internal/Codebase/ClassConstantByWildcardResolver.php @@ -19,10 +19,7 @@ */ final class ClassConstantByWildcardResolver { - /** - * @var Codebase - */ - private $codebase; + private Codebase $codebase; public function __construct(Codebase $codebase) { diff --git a/src/Psalm/Internal/Codebase/ClassLikes.php b/src/Psalm/Internal/Codebase/ClassLikes.php index 1a9bb459388..5019317f43e 100644 --- a/src/Psalm/Internal/Codebase/ClassLikes.php +++ b/src/Psalm/Internal/Codebase/ClassLikes.php @@ -72,10 +72,7 @@ */ class ClassLikes { - /** - * @var ClassLikeStorageProvider - */ - private $classlike_storage_provider; + private ClassLikeStorageProvider $classlike_storage_provider; /** * @var FileReferenceProvider @@ -130,17 +127,17 @@ class ClassLikes /** * @var array */ - private $classlike_aliases_map = []; + private array $classlike_aliases_map = []; /** * @var array */ - private $existing_classlike_aliases = []; + private array $existing_classlike_aliases = []; /** * @var array */ - private $trait_nodes = []; + private array $trait_nodes = []; /** * @var bool @@ -152,20 +149,11 @@ class ClassLikes */ public $collect_locations = false; - /** - * @var StatementsProvider - */ - private $statements_provider; + private StatementsProvider $statements_provider; - /** - * @var Config - */ - private $config; + private Config $config; - /** - * @var Scanner - */ - private $scanner; + private Scanner $scanner; public function __construct( Config $config, diff --git a/src/Psalm/Internal/Codebase/Functions.php b/src/Psalm/Internal/Codebase/Functions.php index 32cb831d926..70ea45c5000 100644 --- a/src/Psalm/Internal/Codebase/Functions.php +++ b/src/Psalm/Internal/Codebase/Functions.php @@ -37,10 +37,7 @@ */ class Functions { - /** - * @var FileStorageProvider - */ - private $file_storage_provider; + private FileStorageProvider $file_storage_provider; /** * @var array @@ -59,10 +56,7 @@ class Functions /** @var DynamicFunctionStorageProvider */ public $dynamic_storage_provider; - /** - * @var Reflection - */ - private $reflection; + private Reflection $reflection; public function __construct(FileStorageProvider $storage_provider, Reflection $reflection) { diff --git a/src/Psalm/Internal/Codebase/InternalCallMapHandler.php b/src/Psalm/Internal/Codebase/InternalCallMapHandler.php index 3222f9e680c..3fe7c954540 100644 --- a/src/Psalm/Internal/Codebase/InternalCallMapHandler.php +++ b/src/Psalm/Internal/Codebase/InternalCallMapHandler.php @@ -40,19 +40,13 @@ class InternalCallMapHandler private const PHP_MINOR_VERSION = 2; private const LOWEST_AVAILABLE_DELTA = 71; - /** - * @var ?int - */ - private static $loaded_php_major_version; - /** - * @var ?int - */ - private static $loaded_php_minor_version; + private static ?int $loaded_php_major_version = null; + private static ?int $loaded_php_minor_version = null; /** * @var array>|null */ - private static $call_map; + private static ?array $call_map = null; /** * @var array>|null @@ -62,7 +56,7 @@ class InternalCallMapHandler /** * @var array>> */ - private static $taint_sink_map = []; + private static array $taint_sink_map = []; /** * @param list $args diff --git a/src/Psalm/Internal/Codebase/Methods.php b/src/Psalm/Internal/Codebase/Methods.php index eb2d818f8d8..7cc94518634 100644 --- a/src/Psalm/Internal/Codebase/Methods.php +++ b/src/Psalm/Internal/Codebase/Methods.php @@ -52,10 +52,7 @@ */ class Methods { - /** - * @var ClassLikeStorageProvider - */ - private $classlike_storage_provider; + private ClassLikeStorageProvider $classlike_storage_provider; /** * @var bool @@ -67,10 +64,7 @@ class Methods */ public $file_reference_provider; - /** - * @var ClassLikes - */ - private $classlikes; + private ClassLikes $classlikes; /** @var MethodReturnTypeProvider */ public $return_type_provider; diff --git a/src/Psalm/Internal/Codebase/Populator.php b/src/Psalm/Internal/Codebase/Populator.php index 54db81288e3..b5abb3b3aa2 100644 --- a/src/Psalm/Internal/Codebase/Populator.php +++ b/src/Psalm/Internal/Codebase/Populator.php @@ -36,35 +36,20 @@ */ class Populator { - /** - * @var ClassLikeStorageProvider - */ - private $classlike_storage_provider; + private ClassLikeStorageProvider $classlike_storage_provider; - /** - * @var FileStorageProvider - */ - private $file_storage_provider; + private FileStorageProvider $file_storage_provider; /** * @var array> */ private $invalid_class_storages = []; - /** - * @var Progress - */ - private $progress; + private Progress $progress; - /** - * @var ClassLikes - */ - private $classlikes; + private ClassLikes $classlikes; - /** - * @var FileReferenceProvider - */ - private $file_reference_provider; + private FileReferenceProvider $file_reference_provider; public function __construct( ClassLikeStorageProvider $classlike_storage_provider, diff --git a/src/Psalm/Internal/Codebase/Properties.php b/src/Psalm/Internal/Codebase/Properties.php index b74a0bddcfd..769cd378c80 100644 --- a/src/Psalm/Internal/Codebase/Properties.php +++ b/src/Psalm/Internal/Codebase/Properties.php @@ -25,13 +25,9 @@ */ class Properties { - /** - * @var ClassLikeStorageProvider - */ - private $classlike_storage_provider; + private ClassLikeStorageProvider $classlike_storage_provider; - /** @var ClassLikes */ - private $classlikes; + private ClassLikes $classlikes; /** * @var bool diff --git a/src/Psalm/Internal/Codebase/PropertyMap.php b/src/Psalm/Internal/Codebase/PropertyMap.php index 914b506a22f..d66c58c4579 100644 --- a/src/Psalm/Internal/Codebase/PropertyMap.php +++ b/src/Psalm/Internal/Codebase/PropertyMap.php @@ -13,7 +13,7 @@ class PropertyMap /** * @var array>|null */ - private static $property_map; + private static ?array $property_map = null; /** * Gets the method/function call map diff --git a/src/Psalm/Internal/Codebase/Reflection.php b/src/Psalm/Internal/Codebase/Reflection.php index 26a6f4892de..cd521511f98 100644 --- a/src/Psalm/Internal/Codebase/Reflection.php +++ b/src/Psalm/Internal/Codebase/Reflection.php @@ -39,15 +39,9 @@ */ class Reflection { - /** - * @var ClassLikeStorageProvider - */ - private $storage_provider; + private ClassLikeStorageProvider $storage_provider; - /** - * @var Codebase - */ - private $codebase; + private Codebase $codebase; /** * @var array diff --git a/src/Psalm/Internal/Codebase/Scanner.php b/src/Psalm/Internal/Codebase/Scanner.php index ab2d7742a8f..177454a8828 100644 --- a/src/Psalm/Internal/Codebase/Scanner.php +++ b/src/Psalm/Internal/Codebase/Scanner.php @@ -85,10 +85,7 @@ */ class Scanner { - /** - * @var Codebase - */ - private $codebase; + private Codebase $codebase; /** * @var array @@ -135,40 +132,19 @@ class Scanner */ private $reflected_classlikes_lc = []; - /** - * @var Reflection - */ - private $reflection; + private Reflection $reflection; - /** - * @var Config - */ - private $config; + private Config $config; - /** - * @var Progress - */ - private $progress; + private Progress $progress; - /** - * @var FileStorageProvider - */ - private $file_storage_provider; + private FileStorageProvider $file_storage_provider; - /** - * @var FileProvider - */ - private $file_provider; + private FileProvider $file_provider; - /** - * @var FileReferenceProvider - */ - private $file_reference_provider; + private FileReferenceProvider $file_reference_provider; - /** - * @var bool - */ - private $is_forked = false; + private bool $is_forked = false; public function __construct( Codebase $codebase, diff --git a/src/Psalm/Internal/Codebase/TaintFlowGraph.php b/src/Psalm/Internal/Codebase/TaintFlowGraph.php index bebf807215d..17ad6cb2152 100644 --- a/src/Psalm/Internal/Codebase/TaintFlowGraph.php +++ b/src/Psalm/Internal/Codebase/TaintFlowGraph.php @@ -49,19 +49,19 @@ class TaintFlowGraph extends DataFlowGraph { /** @var array */ - private $sources = []; + private array $sources = []; /** @var array */ private $nodes = []; /** @var array */ - private $sinks = []; + private array $sinks = []; /** @var array> */ - private $specialized_calls = []; + private array $specialized_calls = []; /** @var array> */ - private $specializations = []; + private array $specializations = []; public function addNode(DataFlowNode $node): void { diff --git a/src/Psalm/Internal/Codebase/VariableUseGraph.php b/src/Psalm/Internal/Codebase/VariableUseGraph.php index 365f440a572..d536a4a71f1 100644 --- a/src/Psalm/Internal/Codebase/VariableUseGraph.php +++ b/src/Psalm/Internal/Codebase/VariableUseGraph.php @@ -19,10 +19,10 @@ class VariableUseGraph extends DataFlowGraph protected $backward_edges = []; /** @var array */ - private $nodes = []; + private array $nodes = []; /** @var array> */ - private $origin_locations_by_id = []; + private array $origin_locations_by_id = []; public function addNode(DataFlowNode $node): void { diff --git a/src/Psalm/Internal/ErrorHandler.php b/src/Psalm/Internal/ErrorHandler.php index 46fb2e7cf79..74efb039f7d 100644 --- a/src/Psalm/Internal/ErrorHandler.php +++ b/src/Psalm/Internal/ErrorHandler.php @@ -22,11 +22,9 @@ */ final class ErrorHandler { - /** @var bool */ - private static $exceptions_enabled = true; + private static bool $exceptions_enabled = true; - /** @var string */ - private static $args = ''; + private static string $args = ''; /** * @param array $argv diff --git a/src/Psalm/Internal/EventDispatcher.php b/src/Psalm/Internal/EventDispatcher.php index f8031e3934f..ad6e091daf1 100644 --- a/src/Psalm/Internal/EventDispatcher.php +++ b/src/Psalm/Internal/EventDispatcher.php @@ -53,7 +53,7 @@ class EventDispatcher * * @var list> */ - private $after_method_checks = []; + private array $after_method_checks = []; /** * Static methods to be called after project function checks have completed @@ -124,7 +124,7 @@ class EventDispatcher * * @var list> */ - private $after_visit_classlikes = []; + private array $after_visit_classlikes = []; /** * Static methods to be called after codebase has been populated diff --git a/src/Psalm/Internal/FileManipulation/ClassDocblockManipulator.php b/src/Psalm/Internal/FileManipulation/ClassDocblockManipulator.php index f953ad9cde8..dae0fdccc22 100644 --- a/src/Psalm/Internal/FileManipulation/ClassDocblockManipulator.php +++ b/src/Psalm/Internal/FileManipulation/ClassDocblockManipulator.php @@ -22,22 +22,17 @@ class ClassDocblockManipulator /** * @var array> */ - private static $manipulators = []; + private static array $manipulators = []; - /** @var Class_ */ - private $stmt; + private Class_ $stmt; - /** @var int */ - private $docblock_start; + private int $docblock_start; - /** @var int */ - private $docblock_end; + private int $docblock_end; - /** @var bool */ - private $immutable = false; + private bool $immutable = false; - /** @var string */ - private $indentation; + private string $indentation; public static function getForClass( ProjectAnalyzer $project_analyzer, diff --git a/src/Psalm/Internal/FileManipulation/FunctionDocblockManipulator.php b/src/Psalm/Internal/FileManipulation/FunctionDocblockManipulator.php index 3541046cdca..24c8c180c4d 100644 --- a/src/Psalm/Internal/FileManipulation/FunctionDocblockManipulator.php +++ b/src/Psalm/Internal/FileManipulation/FunctionDocblockManipulator.php @@ -44,62 +44,49 @@ class FunctionDocblockManipulator /** @var Closure|Function_|ClassMethod|ArrowFunction */ private $stmt; - /** @var int */ - private $docblock_start; + private int $docblock_start; - /** @var int */ - private $docblock_end; + private int $docblock_end; - /** @var int */ - private $return_typehint_area_start; + private int $return_typehint_area_start; - /** @var null|int */ - private $return_typehint_colon_start; + private ?int $return_typehint_colon_start = null; - /** @var null|int */ - private $return_typehint_start; + private ?int $return_typehint_start = null; - /** @var null|int */ - private $return_typehint_end; + private ?int $return_typehint_end = null; - /** @var null|string */ - private $new_php_return_type; + private ?string $new_php_return_type = null; - /** @var bool */ - private $return_type_is_php_compatible = false; + private bool $return_type_is_php_compatible = false; - /** @var null|string */ - private $new_phpdoc_return_type; + private ?string $new_phpdoc_return_type = null; - /** @var null|string */ - private $new_psalm_return_type; + private ?string $new_psalm_return_type = null; /** @var array */ - private $new_php_param_types = []; + private array $new_php_param_types = []; /** @var array */ - private $new_phpdoc_param_types = []; + private array $new_phpdoc_param_types = []; /** @var array */ - private $new_psalm_param_types = []; + private array $new_psalm_param_types = []; - /** @var string */ - private $indentation; + private string $indentation; - /** @var string|null */ - private $return_type_description; + private ?string $return_type_description = null; /** @var array */ - private $param_offsets = []; + private array $param_offsets = []; /** @var array */ - private $param_typehint_offsets = []; + private array $param_typehint_offsets = []; - /** @var bool */ - private $is_pure = false; + private bool $is_pure = false; /** @var list */ - private $throwsExceptions = []; + private array $throwsExceptions = []; /** * @param Closure|Function_|ClassMethod|ArrowFunction $stmt diff --git a/src/Psalm/Internal/FileManipulation/PropertyDocblockManipulator.php b/src/Psalm/Internal/FileManipulation/PropertyDocblockManipulator.php index a8d560758b8..3dc2793eed6 100644 --- a/src/Psalm/Internal/FileManipulation/PropertyDocblockManipulator.php +++ b/src/Psalm/Internal/FileManipulation/PropertyDocblockManipulator.php @@ -27,46 +27,33 @@ class PropertyDocblockManipulator /** * @var array> */ - private static $manipulators = []; + private static array $manipulators = []; - /** @var Property */ - private $stmt; + private Property $stmt; - /** @var int */ - private $docblock_start; + private int $docblock_start; - /** @var int */ - private $docblock_end; + private int $docblock_end; - /** @var null|int */ - private $typehint_start; + private ?int $typehint_start = null; - /** @var int */ - private $typehint_area_start; + private int $typehint_area_start; - /** @var null|int */ - private $typehint_end; + private ?int $typehint_end = null; - /** @var null|string */ - private $new_php_type; + private ?string $new_php_type = null; - /** @var bool */ - private $type_is_php_compatible = false; + private bool $type_is_php_compatible = false; - /** @var null|string */ - private $new_phpdoc_type; + private ?string $new_phpdoc_type = null; - /** @var null|string */ - private $new_psalm_type; + private ?string $new_psalm_type = null; - /** @var string */ - private $indentation; + private string $indentation; - /** @var bool */ - private $add_newline = false; + private bool $add_newline = false; - /** @var string|null */ - private $type_description; + private ?string $type_description = null; public static function getForProperty( ProjectAnalyzer $project_analyzer, diff --git a/src/Psalm/Internal/Fork/Pool.php b/src/Psalm/Internal/Fork/Pool.php index e97604a68b5..ef5e871a3ef 100644 --- a/src/Psalm/Internal/Fork/Pool.php +++ b/src/Psalm/Internal/Fork/Pool.php @@ -75,17 +75,15 @@ class Pool private const EXIT_SUCCESS = 0; private const EXIT_FAILURE = 1; - /** @var Config */ - private $config; + private Config $config; /** @var int[] */ - private $child_pid_list = []; + private array $child_pid_list = []; /** @var resource[] */ - private $read_streams = []; + private array $read_streams = []; - /** @var bool */ - private $did_have_error = false; + private bool $did_have_error = false; /** @var ?Closure(mixed): void */ private $task_done_closure; diff --git a/src/Psalm/Internal/Fork/PsalmRestarter.php b/src/Psalm/Internal/Fork/PsalmRestarter.php index 2ec087adf85..f751ca93da0 100644 --- a/src/Psalm/Internal/Fork/PsalmRestarter.php +++ b/src/Psalm/Internal/Fork/PsalmRestarter.php @@ -16,15 +16,12 @@ */ class PsalmRestarter extends XdebugHandler { - /** - * @var bool - */ - private $required = false; + private bool $required = false; /** * @var string[] */ - private $disabledExtensions = []; + private array $disabledExtensions = []; public function disableExtension(string $disabledExtension): void { diff --git a/src/Psalm/Internal/IncludeCollector.php b/src/Psalm/Internal/IncludeCollector.php index 317f2a3aba5..ba37946d8c9 100644 --- a/src/Psalm/Internal/IncludeCollector.php +++ b/src/Psalm/Internal/IncludeCollector.php @@ -22,7 +22,7 @@ final class IncludeCollector { /** @var list */ - private $included_files = []; + private array $included_files = []; /** * @template T diff --git a/src/Psalm/Internal/LanguageServer/Client/TextDocument.php b/src/Psalm/Internal/LanguageServer/Client/TextDocument.php index c2b7f8cc704..43aad5e1a28 100644 --- a/src/Psalm/Internal/LanguageServer/Client/TextDocument.php +++ b/src/Psalm/Internal/LanguageServer/Client/TextDocument.php @@ -21,15 +21,9 @@ */ class TextDocument { - /** - * @var ClientHandler - */ - private $handler; + private ClientHandler $handler; - /** - * @var JsonMapper - */ - private $mapper; + private JsonMapper $mapper; public function __construct(ClientHandler $handler, JsonMapper $mapper) { diff --git a/src/Psalm/Internal/LanguageServer/LanguageClient.php b/src/Psalm/Internal/LanguageServer/LanguageClient.php index 9c2ef144e11..dc828f3c9ff 100644 --- a/src/Psalm/Internal/LanguageServer/LanguageClient.php +++ b/src/Psalm/Internal/LanguageServer/LanguageClient.php @@ -21,10 +21,8 @@ class LanguageClient /** * The client handler - * - * @var ClientHandler */ - private $handler; + private ClientHandler $handler; public function __construct(ProtocolReader $reader, ProtocolWriter $writer) { diff --git a/src/Psalm/Internal/LanguageServer/ProtocolStreamReader.php b/src/Psalm/Internal/LanguageServer/ProtocolStreamReader.php index bb1759675b8..944c6af3dd7 100644 --- a/src/Psalm/Internal/LanguageServer/ProtocolStreamReader.php +++ b/src/Psalm/Internal/LanguageServer/ProtocolStreamReader.php @@ -35,16 +35,12 @@ class ProtocolStreamReader implements ProtocolReader * @var bool */ private $is_accepting_new_requests = true; - /** @var int */ - private $parsing_mode = self::PARSE_HEADERS; - /** @var string */ - private $buffer = ''; + private int $parsing_mode = self::PARSE_HEADERS; + private string $buffer = ''; /** @var string[] */ private $headers = []; - /** @var ?int */ - private $content_length; - /** @var bool */ - private $did_emit_close = false; + private ?int $content_length = null; + private bool $did_emit_close = false; /** * @param resource $input diff --git a/src/Psalm/Internal/LanguageServer/ProtocolStreamWriter.php b/src/Psalm/Internal/LanguageServer/ProtocolStreamWriter.php index cedd7c70e2c..10d86e14cd9 100644 --- a/src/Psalm/Internal/LanguageServer/ProtocolStreamWriter.php +++ b/src/Psalm/Internal/LanguageServer/ProtocolStreamWriter.php @@ -12,10 +12,7 @@ */ class ProtocolStreamWriter implements ProtocolWriter { - /** - * @var ResourceOutputStream - */ - private $output; + private ResourceOutputStream $output; /** * @param resource $output diff --git a/src/Psalm/Internal/PhpVisitor/ConditionCloningVisitor.php b/src/Psalm/Internal/PhpVisitor/ConditionCloningVisitor.php index 19eb0350eb2..b1e4018a1b0 100644 --- a/src/Psalm/Internal/PhpVisitor/ConditionCloningVisitor.php +++ b/src/Psalm/Internal/PhpVisitor/ConditionCloningVisitor.php @@ -14,7 +14,7 @@ */ class ConditionCloningVisitor extends NodeVisitorAbstract { - private $type_provider; + private NodeDataProvider $type_provider; public function __construct(NodeDataProvider $old_type_provider) { diff --git a/src/Psalm/Internal/PhpVisitor/NodeCleanerVisitor.php b/src/Psalm/Internal/PhpVisitor/NodeCleanerVisitor.php index f9515782dfd..2342123c24c 100644 --- a/src/Psalm/Internal/PhpVisitor/NodeCleanerVisitor.php +++ b/src/Psalm/Internal/PhpVisitor/NodeCleanerVisitor.php @@ -10,7 +10,7 @@ */ class NodeCleanerVisitor extends PhpParser\NodeVisitorAbstract { - private $type_provider; + private NodeDataProvider $type_provider; public function __construct(NodeDataProvider $type_provider) { diff --git a/src/Psalm/Internal/PhpVisitor/OffsetShifterVisitor.php b/src/Psalm/Internal/PhpVisitor/OffsetShifterVisitor.php index 18c680054ef..61ecd73f45c 100644 --- a/src/Psalm/Internal/PhpVisitor/OffsetShifterVisitor.php +++ b/src/Psalm/Internal/PhpVisitor/OffsetShifterVisitor.php @@ -11,14 +11,12 @@ */ class OffsetShifterVisitor extends PhpParser\NodeVisitorAbstract { - /** @var int */ - private $file_offset; + private int $file_offset; - /** @var int */ - private $line_offset; + private int $line_offset; /** @var array */ - private $extra_offsets; + private array $extra_offsets; /** * @param array $extra_offsets diff --git a/src/Psalm/Internal/PhpVisitor/ParamReplacementVisitor.php b/src/Psalm/Internal/PhpVisitor/ParamReplacementVisitor.php index 32fe8e3411f..087e64f884e 100644 --- a/src/Psalm/Internal/PhpVisitor/ParamReplacementVisitor.php +++ b/src/Psalm/Internal/PhpVisitor/ParamReplacementVisitor.php @@ -16,20 +16,16 @@ */ class ParamReplacementVisitor extends PhpParser\NodeVisitorAbstract { - /** @var string */ - private $old_name; + private string $old_name; - /** @var string */ - private $new_name; + private string $new_name; /** @var list */ private $replacements = []; - /** @var bool */ - private $new_name_replaced = false; + private bool $new_name_replaced = false; - /** @var bool */ - private $new_new_name_used = false; + private bool $new_new_name_used = false; public function __construct(string $old_name, string $new_name) { diff --git a/src/Psalm/Internal/PhpVisitor/PartialParserVisitor.php b/src/Psalm/Internal/PhpVisitor/PartialParserVisitor.php index 4540c4dd2d1..78fe8be278f 100644 --- a/src/Psalm/Internal/PhpVisitor/PartialParserVisitor.php +++ b/src/Psalm/Internal/PhpVisitor/PartialParserVisitor.php @@ -4,6 +4,7 @@ use PhpParser; use PhpParser\ErrorHandler\Collecting; +use PhpParser\Parser; use function count; use function preg_match_all; @@ -30,33 +31,26 @@ class PartialParserVisitor extends PhpParser\NodeVisitorAbstract { /** @var array */ - private $offset_map; + private array $offset_map; - /** @var bool */ - private $must_rescan = false; + private bool $must_rescan = false; - /** @var int */ - private $non_method_changes; + private int $non_method_changes; - /** @var string */ - private $a_file_contents; + private string $a_file_contents; - /** @var string */ - private $b_file_contents; + private string $b_file_contents; - /** @var int */ - private $a_file_contents_length; + private int $a_file_contents_length; - /** @var PhpParser\Parser */ - private $parser; + private Parser $parser; - /** @var PhpParser\ErrorHandler\Collecting */ - private $error_handler; + private Collecting $error_handler; /** @param array $offset_map */ public function __construct( - PhpParser\Parser $parser, - PhpParser\ErrorHandler\Collecting $error_handler, + Parser $parser, + Collecting $error_handler, array $offset_map, string $a_file_contents, string $b_file_contents diff --git a/src/Psalm/Internal/PhpVisitor/Reflector/ClassLikeNodeScanner.php b/src/Psalm/Internal/PhpVisitor/Reflector/ClassLikeNodeScanner.php index 3f3abb81430..b02ba3e5f7a 100644 --- a/src/Psalm/Internal/PhpVisitor/Reflector/ClassLikeNodeScanner.php +++ b/src/Psalm/Internal/PhpVisitor/Reflector/ClassLikeNodeScanner.php @@ -89,50 +89,29 @@ */ class ClassLikeNodeScanner { - /** - * @var FileScanner - */ - private $file_scanner; + private FileScanner $file_scanner; - /** - * @var Codebase - */ - private $codebase; + private Codebase $codebase; - /** - * @var string - */ - private $file_path; + private string $file_path; - /** - * @var Config - */ - private $config; + private Config $config; - /** - * @var FileStorage - */ - private $file_storage; + private FileStorage $file_storage; /** * @var array */ - private $classlike_type_aliases = []; + private array $classlike_type_aliases = []; /** * @var array> */ public $class_template_types = []; - /** - * @var PhpParser\Node\Name|null - */ - private $namespace_name; + private ?Name $namespace_name; - /** - * @var Aliases - */ - private $aliases; + private Aliases $aliases; /** * @var ?ClassLikeStorage @@ -149,7 +128,7 @@ public function __construct( FileStorage $file_storage, FileScanner $file_scanner, Aliases $aliases, - ?PhpParser\Node\Name $namespace_name + ?Name $namespace_name ) { $this->codebase = $codebase; $this->file_storage = $file_storage; diff --git a/src/Psalm/Internal/PhpVisitor/Reflector/FunctionLikeNodeScanner.php b/src/Psalm/Internal/PhpVisitor/Reflector/FunctionLikeNodeScanner.php index cf7111284b9..47bacc1011f 100644 --- a/src/Psalm/Internal/PhpVisitor/Reflector/FunctionLikeNodeScanner.php +++ b/src/Psalm/Internal/PhpVisitor/Reflector/FunctionLikeNodeScanner.php @@ -68,50 +68,29 @@ */ class FunctionLikeNodeScanner { - /** - * @var FileScanner - */ - private $file_scanner; + private FileScanner $file_scanner; - /** - * @var Codebase - */ - private $codebase; + private Codebase $codebase; - /** - * @var string - */ - private $file_path; + private string $file_path; - /** - * @var Config - */ - private $config; + private Config $config; - /** - * @var FileStorage - */ - private $file_storage; + private FileStorage $file_storage; - /** - * @var ?ClassLikeStorage - */ - private $classlike_storage; + private ?ClassLikeStorage $classlike_storage; /** * @var array> */ - private $existing_function_template_types; + private array $existing_function_template_types; - /** - * @var Aliases - */ - private $aliases; + private Aliases $aliases; /** * @var array */ - private $type_aliases; + private array $type_aliases; /** * @var ?FunctionLikeStorage diff --git a/src/Psalm/Internal/PhpVisitor/ReflectorVisitor.php b/src/Psalm/Internal/PhpVisitor/ReflectorVisitor.php index 4b4fdba1b4c..c6c67df44bc 100644 --- a/src/Psalm/Internal/PhpVisitor/ReflectorVisitor.php +++ b/src/Psalm/Internal/PhpVisitor/ReflectorVisitor.php @@ -4,6 +4,8 @@ use LogicException; use PhpParser; +use PhpParser\Node\Expr; +use PhpParser\Node\Name; use Psalm\Aliases; use Psalm\CodeLocation; use Psalm\Codebase; @@ -52,74 +54,44 @@ */ class ReflectorVisitor extends PhpParser\NodeVisitorAbstract implements FileSource { - /** - * @var Aliases - */ - private $aliases; + private Aliases $aliases; - /** - * @var FileScanner - */ - private $file_scanner; + private FileScanner $file_scanner; - /** - * @var Codebase - */ - private $codebase; + private Codebase $codebase; - /** - * @var string - */ - private $file_path; + private string $file_path; - /** - * @var bool - */ - private $scan_deep; + private bool $scan_deep; - /** - * @var FileStorage - */ - private $file_storage; + private FileStorage $file_storage; /** * @var array */ - private $functionlike_node_scanners = []; + private array $functionlike_node_scanners = []; /** * @var array */ - private $classlike_node_scanners = []; + private array $classlike_node_scanners = []; - /** - * @var PhpParser\Node\Name|null - */ - private $namespace_name; + private ?Name $namespace_name = null; - /** - * @var PhpParser\Node\Expr|null - */ - private $exists_cond_expr; + private ?Expr $exists_cond_expr = null; - /** - * @var ?int - */ - private $skip_if_descendants; + private ?int $skip_if_descendants = null; /** * @var array */ - private $type_aliases = []; + private array $type_aliases = []; /** * @var array */ - private $bad_classes = []; - /** - * @var EventDispatcher - */ - private $eventDispatcher; + private array $bad_classes = []; + private EventDispatcher $eventDispatcher; public function __construct( Codebase $codebase, @@ -329,7 +301,7 @@ public function enterNode(PhpParser\Node $node): ?int $this->skip_if_descendants = $node->getLine(); } } - } elseif ($node instanceof PhpParser\Node\Expr) { + } elseif ($node instanceof Expr) { $functionlike_storage = null; if ($this->functionlike_node_scanners) { @@ -517,7 +489,7 @@ public function leaveNode(PhpParser\Node $node) foreach ($node->stmts as $meta_stmt) { if ($meta_stmt instanceof PhpParser\Node\Stmt\Expression && $meta_stmt->expr instanceof PhpParser\Node\Expr\FuncCall - && $meta_stmt->expr->name instanceof PhpParser\Node\Name + && $meta_stmt->expr->name instanceof Name && $meta_stmt->expr->name->parts === ['override'] ) { PhpStormMetaScanner::handleOverride($meta_stmt->expr->getArgs(), $this->codebase); diff --git a/src/Psalm/Internal/PhpVisitor/SimpleNameResolver.php b/src/Psalm/Internal/PhpVisitor/SimpleNameResolver.php index 0616249b1c0..b4532b4ff43 100644 --- a/src/Psalm/Internal/PhpVisitor/SimpleNameResolver.php +++ b/src/Psalm/Internal/PhpVisitor/SimpleNameResolver.php @@ -19,14 +19,11 @@ */ class SimpleNameResolver extends NodeVisitorAbstract { - /** @var NameContext Naming context */ - private $nameContext; + private NameContext $nameContext; - /** @var int|null */ - private $start_change; + private ?int $start_change = null; - /** @var int|null */ - private $end_change; + private ?int $end_change = null; /** * @param ErrorHandler $errorHandler Error handler diff --git a/src/Psalm/Internal/PhpVisitor/TraitFinder.php b/src/Psalm/Internal/PhpVisitor/TraitFinder.php index 55d177e351d..9d5717dad10 100644 --- a/src/Psalm/Internal/PhpVisitor/TraitFinder.php +++ b/src/Psalm/Internal/PhpVisitor/TraitFinder.php @@ -20,9 +20,9 @@ class TraitFinder extends PhpParser\NodeVisitorAbstract { /** @var list */ - private $matching_trait_nodes = []; + private array $matching_trait_nodes = []; - private $fq_trait_name; + private string $fq_trait_name; public function __construct(string $fq_trait_name) { diff --git a/src/Psalm/Internal/PhpVisitor/TypeMappingVisitor.php b/src/Psalm/Internal/PhpVisitor/TypeMappingVisitor.php index 593a64ee03d..354a639e4cc 100644 --- a/src/Psalm/Internal/PhpVisitor/TypeMappingVisitor.php +++ b/src/Psalm/Internal/PhpVisitor/TypeMappingVisitor.php @@ -13,8 +13,8 @@ */ class TypeMappingVisitor extends NodeVisitorAbstract { - private $fake_type_provider; - private $real_type_provider; + private NodeDataProvider $fake_type_provider; + private NodeDataProvider $real_type_provider; public function __construct( NodeDataProvider $fake_type_provider, diff --git a/src/Psalm/Internal/PluginManager/Command/DisableCommand.php b/src/Psalm/Internal/PluginManager/Command/DisableCommand.php index ae05fb470e7..380ef4fbd99 100644 --- a/src/Psalm/Internal/PluginManager/Command/DisableCommand.php +++ b/src/Psalm/Internal/PluginManager/Command/DisableCommand.php @@ -23,8 +23,7 @@ */ class DisableCommand extends Command { - /** @var PluginListFactory */ - private $plugin_list_factory; + private PluginListFactory $plugin_list_factory; public function __construct(PluginListFactory $plugin_list_factory) { diff --git a/src/Psalm/Internal/PluginManager/Command/EnableCommand.php b/src/Psalm/Internal/PluginManager/Command/EnableCommand.php index d868ca18e95..4778165a0ab 100644 --- a/src/Psalm/Internal/PluginManager/Command/EnableCommand.php +++ b/src/Psalm/Internal/PluginManager/Command/EnableCommand.php @@ -23,8 +23,7 @@ */ class EnableCommand extends Command { - /** @var PluginListFactory */ - private $plugin_list_factory; + private PluginListFactory $plugin_list_factory; public function __construct(PluginListFactory $plugin_list_factory) { diff --git a/src/Psalm/Internal/PluginManager/Command/ShowCommand.php b/src/Psalm/Internal/PluginManager/Command/ShowCommand.php index 4e544c6c87e..6ab5cd5024e 100644 --- a/src/Psalm/Internal/PluginManager/Command/ShowCommand.php +++ b/src/Psalm/Internal/PluginManager/Command/ShowCommand.php @@ -24,8 +24,7 @@ */ class ShowCommand extends Command { - /** @var PluginListFactory */ - private $plugin_list_factory; + private PluginListFactory $plugin_list_factory; public function __construct(PluginListFactory $plugin_list_factory) { diff --git a/src/Psalm/Internal/PluginManager/ComposerLock.php b/src/Psalm/Internal/PluginManager/ComposerLock.php index af2cde11a0c..9a003baccbc 100644 --- a/src/Psalm/Internal/PluginManager/ComposerLock.php +++ b/src/Psalm/Internal/PluginManager/ComposerLock.php @@ -18,7 +18,7 @@ class ComposerLock { /** @var string[] */ - private $file_names; + private array $file_names; /** @param string[] $file_names */ public function __construct(array $file_names) diff --git a/src/Psalm/Internal/PluginManager/ConfigFile.php b/src/Psalm/Internal/PluginManager/ConfigFile.php index 1b93ea2c546..84ffed92ff6 100644 --- a/src/Psalm/Internal/PluginManager/ConfigFile.php +++ b/src/Psalm/Internal/PluginManager/ConfigFile.php @@ -19,17 +19,13 @@ */ class ConfigFile { - /** @var string */ - private $path; + private string $path; - /** @var string */ - private $current_dir; + private string $current_dir; - /** @var string|null */ - private $psalm_header; + private ?string $psalm_header = null; - /** @var int|null */ - private $psalm_tag_end_pos; + private ?int $psalm_tag_end_pos = null; public function __construct(string $current_dir, ?string $explicit_path) { diff --git a/src/Psalm/Internal/PluginManager/PluginList.php b/src/Psalm/Internal/PluginManager/PluginList.php index ddfdb248e8b..fa06d3b6362 100644 --- a/src/Psalm/Internal/PluginManager/PluginList.php +++ b/src/Psalm/Internal/PluginManager/PluginList.php @@ -16,14 +16,12 @@ */ class PluginList { - /** @var null|ConfigFile */ - private $config_file; + private ?ConfigFile $config_file; - /** @var ComposerLock */ - private $composer_lock; + private ComposerLock $composer_lock; /** @var ?array [pluginClass => packageName] */ - private $all_plugins; + private ?array $all_plugins = null; /** @var ?array [pluginClass => ?packageName] */ private $enabled_plugins; diff --git a/src/Psalm/Internal/PluginManager/PluginListFactory.php b/src/Psalm/Internal/PluginManager/PluginListFactory.php index 6ae81a32b8d..e6104032776 100644 --- a/src/Psalm/Internal/PluginManager/PluginListFactory.php +++ b/src/Psalm/Internal/PluginManager/PluginListFactory.php @@ -18,11 +18,9 @@ */ class PluginListFactory { - /** @var string */ - private $project_root; + private string $project_root; - /** @var string */ - private $psalm_root; + private string $psalm_root; public function __construct(string $project_root, string $psalm_root) { diff --git a/src/Psalm/Internal/Provider/ClassLikeStorageCacheProvider.php b/src/Psalm/Internal/Provider/ClassLikeStorageCacheProvider.php index 577ab40e86e..0915d99bf1c 100644 --- a/src/Psalm/Internal/Provider/ClassLikeStorageCacheProvider.php +++ b/src/Psalm/Internal/Provider/ClassLikeStorageCacheProvider.php @@ -3,7 +3,6 @@ namespace Psalm\Internal\Provider; use Psalm\Config; -use Psalm\Internal\Provider\Providers; use Psalm\Storage\ClassLikeStorage; use RuntimeException; use UnexpectedValueException; @@ -34,10 +33,7 @@ */ class ClassLikeStorageCacheProvider { - /** - * @var Config - */ - private $config; + private Config $config; /** * @var string diff --git a/src/Psalm/Internal/Provider/DynamicFunctionStorageProvider.php b/src/Psalm/Internal/Provider/DynamicFunctionStorageProvider.php index d3f37a4f469..24641a83de9 100644 --- a/src/Psalm/Internal/Provider/DynamicFunctionStorageProvider.php +++ b/src/Psalm/Internal/Provider/DynamicFunctionStorageProvider.php @@ -30,7 +30,7 @@ final class DynamicFunctionStorageProvider private static $handlers = []; /** @var array */ - private static $dynamic_storages = []; + private static array $dynamic_storages = []; /** * @param class-string $class diff --git a/src/Psalm/Internal/Provider/FileReferenceProvider.php b/src/Psalm/Internal/Provider/FileReferenceProvider.php index 65afc1ff2c3..af636892be3 100644 --- a/src/Psalm/Internal/Provider/FileReferenceProvider.php +++ b/src/Psalm/Internal/Provider/FileReferenceProvider.php @@ -26,10 +26,7 @@ */ class FileReferenceProvider { - /** - * @var bool - */ - private $loaded_from_cache = false; + private bool $loaded_from_cache = false; /** * A lookup table used for getting all the references to a class not inside a method @@ -77,14 +74,14 @@ class FileReferenceProvider /** * @var array> */ - private static $files_inheriting_classes = []; + private static array $files_inheriting_classes = []; /** * A list of all files deleted since the last successful run * * @var array|null */ - private static $deleted_files; + private static ?array $deleted_files = null; /** * A lookup table used for getting all the files referenced by a file diff --git a/src/Psalm/Internal/Provider/FileStorageCacheProvider.php b/src/Psalm/Internal/Provider/FileStorageCacheProvider.php index 8db64af0364..6fb7aa1a78b 100644 --- a/src/Psalm/Internal/Provider/FileStorageCacheProvider.php +++ b/src/Psalm/Internal/Provider/FileStorageCacheProvider.php @@ -3,7 +3,6 @@ namespace Psalm\Internal\Provider; use Psalm\Config; -use Psalm\Internal\Provider\Providers; use Psalm\Storage\FileStorage; use RuntimeException; use UnexpectedValueException; @@ -38,10 +37,7 @@ class FileStorageCacheProvider */ private $modified_timestamps = ''; - /** - * @var Config - */ - private $config; + private Config $config; private const FILE_STORAGE_CACHE_DIRECTORY = 'file_cache'; diff --git a/src/Psalm/Internal/Provider/FunctionExistenceProvider.php b/src/Psalm/Internal/Provider/FunctionExistenceProvider.php index 17932060080..93e2fe53970 100644 --- a/src/Psalm/Internal/Provider/FunctionExistenceProvider.php +++ b/src/Psalm/Internal/Provider/FunctionExistenceProvider.php @@ -21,7 +21,7 @@ class FunctionExistenceProvider * array * > */ - private static $handlers = []; + private static array $handlers = []; public function __construct() { diff --git a/src/Psalm/Internal/Provider/FunctionParamsProvider.php b/src/Psalm/Internal/Provider/FunctionParamsProvider.php index 3cf7493ddcd..e6949d88ad2 100644 --- a/src/Psalm/Internal/Provider/FunctionParamsProvider.php +++ b/src/Psalm/Internal/Provider/FunctionParamsProvider.php @@ -24,7 +24,7 @@ class FunctionParamsProvider * array> * > */ - private static $handlers = []; + private static array $handlers = []; public function __construct() { diff --git a/src/Psalm/Internal/Provider/FunctionReturnTypeProvider.php b/src/Psalm/Internal/Provider/FunctionReturnTypeProvider.php index 699c0dd8d37..5e5b62247a3 100644 --- a/src/Psalm/Internal/Provider/FunctionReturnTypeProvider.php +++ b/src/Psalm/Internal/Provider/FunctionReturnTypeProvider.php @@ -60,7 +60,7 @@ class FunctionReturnTypeProvider * array * > */ - private static $handlers = []; + private static array $handlers = []; public function __construct() { diff --git a/src/Psalm/Internal/Provider/MethodExistenceProvider.php b/src/Psalm/Internal/Provider/MethodExistenceProvider.php index a2f45ae0706..136801794cf 100644 --- a/src/Psalm/Internal/Provider/MethodExistenceProvider.php +++ b/src/Psalm/Internal/Provider/MethodExistenceProvider.php @@ -21,7 +21,7 @@ class MethodExistenceProvider * array * > */ - private static $handlers = []; + private static array $handlers = []; public function __construct() { diff --git a/src/Psalm/Internal/Provider/MethodParamsProvider.php b/src/Psalm/Internal/Provider/MethodParamsProvider.php index 23b1e49ba1e..688f94f8dc8 100644 --- a/src/Psalm/Internal/Provider/MethodParamsProvider.php +++ b/src/Psalm/Internal/Provider/MethodParamsProvider.php @@ -27,7 +27,7 @@ class MethodParamsProvider * array> * > */ - private static $handlers = []; + private static array $handlers = []; public function __construct() { diff --git a/src/Psalm/Internal/Provider/MethodReturnTypeProvider.php b/src/Psalm/Internal/Provider/MethodReturnTypeProvider.php index 4af245e5127..83912100c12 100644 --- a/src/Psalm/Internal/Provider/MethodReturnTypeProvider.php +++ b/src/Psalm/Internal/Provider/MethodReturnTypeProvider.php @@ -31,7 +31,7 @@ class MethodReturnTypeProvider * array * > */ - private static $handlers = []; + private static array $handlers = []; public function __construct() { diff --git a/src/Psalm/Internal/Provider/MethodVisibilityProvider.php b/src/Psalm/Internal/Provider/MethodVisibilityProvider.php index e090f38739f..9530095fe6e 100644 --- a/src/Psalm/Internal/Provider/MethodVisibilityProvider.php +++ b/src/Psalm/Internal/Provider/MethodVisibilityProvider.php @@ -23,7 +23,7 @@ class MethodVisibilityProvider * array * > */ - private static $handlers = []; + private static array $handlers = []; public function __construct() { diff --git a/src/Psalm/Internal/Provider/ParserCacheProvider.php b/src/Psalm/Internal/Provider/ParserCacheProvider.php index 4670623c8a7..34119906a4b 100644 --- a/src/Psalm/Internal/Provider/ParserCacheProvider.php +++ b/src/Psalm/Internal/Provider/ParserCacheProvider.php @@ -6,7 +6,6 @@ use PhpParser; use PhpParser\Node\Stmt; use Psalm\Config; -use Psalm\Internal\Provider\Providers; use RuntimeException; use UnexpectedValueException; @@ -46,10 +45,7 @@ class ParserCacheProvider private const PARSER_CACHE_DIRECTORY = 'php-parser'; private const FILE_CONTENTS_CACHE_DIRECTORY = 'file-caches'; - /** - * @var Config - */ - private $config; + private Config $config; /** * A map of filename hashes to contents hashes @@ -65,10 +61,7 @@ class ParserCacheProvider */ protected $new_file_content_hashes = []; - /** - * @var bool - */ - private $use_file_cache; + private bool $use_file_cache; public function __construct(Config $config, bool $use_file_cache = true) { diff --git a/src/Psalm/Internal/Provider/ProjectCacheProvider.php b/src/Psalm/Internal/Provider/ProjectCacheProvider.php index 6dcb295d111..915af943de6 100644 --- a/src/Psalm/Internal/Provider/ProjectCacheProvider.php +++ b/src/Psalm/Internal/Provider/ProjectCacheProvider.php @@ -3,7 +3,6 @@ namespace Psalm\Internal\Provider; use Psalm\Config; -use Psalm\Internal\Provider\Providers; use function file_exists; use function file_put_contents; @@ -31,12 +30,9 @@ class ProjectCacheProvider */ private $last_run; - /** - * @var string|null - */ - private $composer_lock_hash; + private ?string $composer_lock_hash = null; - private $composer_lock_location; + private string $composer_lock_location; public function __construct(string $composer_lock_location) { diff --git a/src/Psalm/Internal/Provider/PropertyExistenceProvider.php b/src/Psalm/Internal/Provider/PropertyExistenceProvider.php index 9065b3fb99e..785a3913f31 100644 --- a/src/Psalm/Internal/Provider/PropertyExistenceProvider.php +++ b/src/Psalm/Internal/Provider/PropertyExistenceProvider.php @@ -23,7 +23,7 @@ class PropertyExistenceProvider * array * > */ - private static $handlers = []; + private static array $handlers = []; public function __construct() { diff --git a/src/Psalm/Internal/Provider/PropertyTypeProvider.php b/src/Psalm/Internal/Provider/PropertyTypeProvider.php index e24509291e0..ba6df03b87f 100644 --- a/src/Psalm/Internal/Provider/PropertyTypeProvider.php +++ b/src/Psalm/Internal/Provider/PropertyTypeProvider.php @@ -24,7 +24,7 @@ class PropertyTypeProvider * array * > */ - private static $handlers = []; + private static array $handlers = []; public function __construct() { diff --git a/src/Psalm/Internal/Provider/PropertyVisibilityProvider.php b/src/Psalm/Internal/Provider/PropertyVisibilityProvider.php index de2ba125ad2..58b32ffca78 100644 --- a/src/Psalm/Internal/Provider/PropertyVisibilityProvider.php +++ b/src/Psalm/Internal/Provider/PropertyVisibilityProvider.php @@ -22,7 +22,7 @@ class PropertyVisibilityProvider * array * > */ - private static $handlers = []; + private static array $handlers = []; public function __construct() { diff --git a/src/Psalm/Internal/Provider/StatementsProvider.php b/src/Psalm/Internal/Provider/StatementsProvider.php index db7df329654..923fe7e6cee 100644 --- a/src/Psalm/Internal/Provider/StatementsProvider.php +++ b/src/Psalm/Internal/Provider/StatementsProvider.php @@ -4,7 +4,9 @@ use PhpParser; use PhpParser\ErrorHandler\Collecting; +use PhpParser\Lexer\Emulative; use PhpParser\Node\Stmt; +use PhpParser\Parser; use Psalm\CodeLocation\ParseErrorLocation; use Psalm\Codebase; use Psalm\Config; @@ -39,10 +41,7 @@ */ class StatementsProvider { - /** - * @var FileProvider - */ - private $file_provider; + private FileProvider $file_provider; /** * @var ?ParserCacheProvider @@ -50,19 +49,13 @@ class StatementsProvider public $parser_cache_provider; /** - * @var int + * @var int|bool */ private $this_modified_time; - /** - * @var ?FileStorageCacheProvider - */ - private $file_storage_cache_provider; + private ?FileStorageCacheProvider $file_storage_cache_provider; - /** - * @var StatementsVolatileCache - */ - private $statements_volatile_cache; + private StatementsVolatileCache $statements_volatile_cache; /** * @var array> @@ -82,7 +75,7 @@ class StatementsProvider /** * @var array */ - private $errors = []; + private array $errors = []; /** * @var array> @@ -94,15 +87,9 @@ class StatementsProvider */ private $deletion_ranges = []; - /** - * @var PhpParser\Lexer|null - */ - private static $lexer; + private static ?Emulative $lexer = null; - /** - * @var PhpParser\Parser|null - */ - private static $parser; + private static ?Parser $parser = null; public function __construct( FileProvider $file_provider, @@ -431,7 +418,7 @@ public static function parseStatements( if (!self::$lexer) { $major_version = Codebase::transformPhpVersionId($analysis_php_version_id, 10_000); $minor_version = Codebase::transformPhpVersionId($analysis_php_version_id % 10_000, 100); - self::$lexer = new PhpParser\Lexer\Emulative([ + self::$lexer = new Emulative([ 'usedAttributes' => $attributes, 'phpVersion' => $major_version . '.' . $minor_version, ]); diff --git a/src/Psalm/Internal/Scanner/ParsedDocblock.php b/src/Psalm/Internal/Scanner/ParsedDocblock.php index 8f5b87192ec..650a444780c 100644 --- a/src/Psalm/Internal/Scanner/ParsedDocblock.php +++ b/src/Psalm/Internal/Scanner/ParsedDocblock.php @@ -22,10 +22,7 @@ class ParsedDocblock /** @var array> */ public $combined_tags = []; - /** - * @var bool - */ - private static $shouldAddNewLineBetweenAnnotations = true; + private static bool $shouldAddNewLineBetweenAnnotations = true; /** @param array> $tags */ public function __construct(string $description, array $tags, string $first_line_padding = '') diff --git a/src/Psalm/Internal/Type/ParseTreeCreator.php b/src/Psalm/Internal/Type/ParseTreeCreator.php index 61c93e7a09c..0adebe41e1a 100644 --- a/src/Psalm/Internal/Type/ParseTreeCreator.php +++ b/src/Psalm/Internal/Type/ParseTreeCreator.php @@ -43,13 +43,11 @@ class ParseTreeCreator private $current_leaf; /** @var array */ - private $type_tokens; + private array $type_tokens; - /** @var int */ - private $type_token_count; + private int $type_token_count; - /** @var int */ - private $t = 0; + private int $t = 0; /** * @param list $type_tokens diff --git a/src/Psalm/Internal/TypeVisitor/CanContainObjectTypeVisitor.php b/src/Psalm/Internal/TypeVisitor/CanContainObjectTypeVisitor.php index 7787ca0a660..b107ba2eaa0 100644 --- a/src/Psalm/Internal/TypeVisitor/CanContainObjectTypeVisitor.php +++ b/src/Psalm/Internal/TypeVisitor/CanContainObjectTypeVisitor.php @@ -12,15 +12,9 @@ /** @internal */ class CanContainObjectTypeVisitor extends TypeVisitor { - /** - * @var bool - */ - private $contains_object_type = false; - - /** - * @var Codebase - */ - private $codebase; + private bool $contains_object_type = false; + + private Codebase $codebase; public function __construct(Codebase $codebase) { diff --git a/src/Psalm/Internal/TypeVisitor/ContainsClassLikeVisitor.php b/src/Psalm/Internal/TypeVisitor/ContainsClassLikeVisitor.php index d5da9e62642..faedea36d6d 100644 --- a/src/Psalm/Internal/TypeVisitor/ContainsClassLikeVisitor.php +++ b/src/Psalm/Internal/TypeVisitor/ContainsClassLikeVisitor.php @@ -18,12 +18,9 @@ class ContainsClassLikeVisitor extends TypeVisitor /** * @var lowercase-string */ - private $fq_classlike_name; + private string $fq_classlike_name; - /** - * @var bool - */ - private $contains_classlike = false; + private bool $contains_classlike = false; /** * @psalm-external-mutation-free diff --git a/src/Psalm/Internal/TypeVisitor/ContainsLiteralVisitor.php b/src/Psalm/Internal/TypeVisitor/ContainsLiteralVisitor.php index 0b905253afa..e2358063480 100644 --- a/src/Psalm/Internal/TypeVisitor/ContainsLiteralVisitor.php +++ b/src/Psalm/Internal/TypeVisitor/ContainsLiteralVisitor.php @@ -16,10 +16,7 @@ */ class ContainsLiteralVisitor extends TypeVisitor { - /** - * @var bool - */ - private $contains_literal = false; + private bool $contains_literal = false; protected function enterNode(TypeNode $type): ?int { diff --git a/src/Psalm/Internal/TypeVisitor/TemplateTypeCollector.php b/src/Psalm/Internal/TypeVisitor/TemplateTypeCollector.php index 41d3acb8e67..ecb07a50b0d 100644 --- a/src/Psalm/Internal/TypeVisitor/TemplateTypeCollector.php +++ b/src/Psalm/Internal/TypeVisitor/TemplateTypeCollector.php @@ -18,7 +18,7 @@ class TemplateTypeCollector extends TypeVisitor /** * @var list */ - private $template_types = []; + private array $template_types = []; protected function enterNode(TypeNode $type): ?int { diff --git a/src/Psalm/Internal/TypeVisitor/TypeChecker.php b/src/Psalm/Internal/TypeVisitor/TypeChecker.php index 95668079da2..0da7c7097c8 100644 --- a/src/Psalm/Internal/TypeVisitor/TypeChecker.php +++ b/src/Psalm/Internal/TypeVisitor/TypeChecker.php @@ -44,45 +44,29 @@ */ class TypeChecker extends TypeVisitor { - /** - * @var StatementsSource - */ - private $source; + private StatementsSource $source; - /** - * @var CodeLocation - */ - private $code_location; + private CodeLocation $code_location; /** * @var array */ - private $suppressed_issues; + private array $suppressed_issues; /** * @var array */ - private $phantom_classes; + private array $phantom_classes; - /** - * @var bool - */ - private $inferred; + private bool $inferred; - /** - * @var bool - */ - private $inherited; + private bool $inherited; - /** - * @var bool - */ - private $prevent_template_covariance; + private bool $prevent_template_covariance; - /** @var bool */ - private $has_errors = false; + private bool $has_errors = false; - private $calling_method_id; + private ?string $calling_method_id; /** * @param array $suppressed_issues diff --git a/src/Psalm/IssueBuffer.php b/src/Psalm/IssueBuffer.php index 369f6a7629d..bb20debfd46 100644 --- a/src/Psalm/IssueBuffer.php +++ b/src/Psalm/IssueBuffer.php @@ -123,7 +123,7 @@ final class IssueBuffer protected static $used_suppressions = []; /** @var array */ - private static $server = []; + private static array $server = []; /** * This will add an issue to be emitted if it's not suppressed and return if it has been added diff --git a/src/Psalm/Plugin/EventHandler/Event/AddRemoveTaintsEvent.php b/src/Psalm/Plugin/EventHandler/Event/AddRemoveTaintsEvent.php index 6199ade0063..8b3eee26aff 100644 --- a/src/Psalm/Plugin/EventHandler/Event/AddRemoveTaintsEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/AddRemoveTaintsEvent.php @@ -9,22 +9,10 @@ final class AddRemoveTaintsEvent { - /** - * @var Expr - */ - private $expr; - /** - * @var Context - */ - private $context; - /** - * @var StatementsSource - */ - private $statements_source; - /** - * @var Codebase - */ - private $codebase; + private Expr $expr; + private Context $context; + private StatementsSource $statements_source; + private Codebase $codebase; /** * Called after an expression has been checked diff --git a/src/Psalm/Plugin/EventHandler/Event/AfterAnalysisEvent.php b/src/Psalm/Plugin/EventHandler/Event/AfterAnalysisEvent.php index f38d87e98d3..92ac8ae9b79 100644 --- a/src/Psalm/Plugin/EventHandler/Event/AfterAnalysisEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/AfterAnalysisEvent.php @@ -8,22 +8,13 @@ final class AfterAnalysisEvent { - /** - * @var Codebase - */ - private $codebase; + private Codebase $codebase; /** * @var IssueData[][] */ - private $issues; - /** - * @var array - */ - private $build_info; - /** - * @var SourceControlInfo|null - */ - private $source_control_info; + private array $issues; + private array $build_info; + private ?SourceControlInfo $source_control_info; /** * Called after analysis is complete diff --git a/src/Psalm/Plugin/EventHandler/Event/AfterClassLikeAnalysisEvent.php b/src/Psalm/Plugin/EventHandler/Event/AfterClassLikeAnalysisEvent.php index bf71348640e..a6c51581eae 100644 --- a/src/Psalm/Plugin/EventHandler/Event/AfterClassLikeAnalysisEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/AfterClassLikeAnalysisEvent.php @@ -10,26 +10,14 @@ final class AfterClassLikeAnalysisEvent { - /** - * @var Node\Stmt\ClassLike - */ - private $stmt; - /** - * @var ClassLikeStorage - */ - private $classlike_storage; - /** - * @var StatementsSource - */ - private $statements_source; - /** - * @var Codebase - */ - private $codebase; + private Node\Stmt\ClassLike $stmt; + private ClassLikeStorage $classlike_storage; + private StatementsSource $statements_source; + private Codebase $codebase; /** * @var FileManipulation[] */ - private $file_replacements; + private array $file_replacements; /** * Called after a statement has been checked diff --git a/src/Psalm/Plugin/EventHandler/Event/AfterClassLikeExistenceCheckEvent.php b/src/Psalm/Plugin/EventHandler/Event/AfterClassLikeExistenceCheckEvent.php index f5e86112b32..d80732bcb8b 100644 --- a/src/Psalm/Plugin/EventHandler/Event/AfterClassLikeExistenceCheckEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/AfterClassLikeExistenceCheckEvent.php @@ -9,26 +9,14 @@ final class AfterClassLikeExistenceCheckEvent { - /** - * @var string - */ - private $fq_class_name; - /** - * @var CodeLocation - */ - private $code_location; - /** - * @var StatementsSource - */ - private $statements_source; - /** - * @var Codebase - */ - private $codebase; + private string $fq_class_name; + private CodeLocation $code_location; + private StatementsSource $statements_source; + private Codebase $codebase; /** * @var FileManipulation[] */ - private $file_replacements; + private array $file_replacements; /** * @param FileManipulation[] $file_replacements diff --git a/src/Psalm/Plugin/EventHandler/Event/AfterClassLikeVisitEvent.php b/src/Psalm/Plugin/EventHandler/Event/AfterClassLikeVisitEvent.php index bd61be0783c..3861baf0165 100644 --- a/src/Psalm/Plugin/EventHandler/Event/AfterClassLikeVisitEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/AfterClassLikeVisitEvent.php @@ -10,26 +10,14 @@ final class AfterClassLikeVisitEvent { - /** - * @var ClassLike - */ - private $stmt; - /** - * @var ClassLikeStorage - */ - private $storage; - /** - * @var FileSource - */ - private $statements_source; - /** - * @var Codebase - */ - private $codebase; + private ClassLike $stmt; + private ClassLikeStorage $storage; + private FileSource $statements_source; + private Codebase $codebase; /** * @var FileManipulation[] */ - private $file_replacements; + private array $file_replacements; /** * @param FileManipulation[] $file_replacements diff --git a/src/Psalm/Plugin/EventHandler/Event/AfterCodebasePopulatedEvent.php b/src/Psalm/Plugin/EventHandler/Event/AfterCodebasePopulatedEvent.php index 53df3472fde..bb82a57ff7c 100644 --- a/src/Psalm/Plugin/EventHandler/Event/AfterCodebasePopulatedEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/AfterCodebasePopulatedEvent.php @@ -6,10 +6,7 @@ final class AfterCodebasePopulatedEvent { - /** - * @var Codebase - */ - private $codebase; + private Codebase $codebase; /** * Called after codebase has been populated diff --git a/src/Psalm/Plugin/EventHandler/Event/AfterEveryFunctionCallAnalysisEvent.php b/src/Psalm/Plugin/EventHandler/Event/AfterEveryFunctionCallAnalysisEvent.php index 9248a107845..410b6b1149b 100644 --- a/src/Psalm/Plugin/EventHandler/Event/AfterEveryFunctionCallAnalysisEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/AfterEveryFunctionCallAnalysisEvent.php @@ -9,26 +9,11 @@ final class AfterEveryFunctionCallAnalysisEvent { - /** - * @var FuncCall - */ - private $expr; - /** - * @var string - */ - private $function_id; - /** - * @var Context - */ - private $context; - /** - * @var StatementsSource - */ - private $statements_source; - /** - * @var Codebase - */ - private $codebase; + private FuncCall $expr; + private string $function_id; + private Context $context; + private StatementsSource $statements_source; + private Codebase $codebase; /** @internal */ public function __construct( diff --git a/src/Psalm/Plugin/EventHandler/Event/AfterExpressionAnalysisEvent.php b/src/Psalm/Plugin/EventHandler/Event/AfterExpressionAnalysisEvent.php index 9bb5f136dcb..25bb8dab8d3 100644 --- a/src/Psalm/Plugin/EventHandler/Event/AfterExpressionAnalysisEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/AfterExpressionAnalysisEvent.php @@ -10,26 +10,14 @@ final class AfterExpressionAnalysisEvent { - /** - * @var Expr - */ - private $expr; - /** - * @var Context - */ - private $context; - /** - * @var StatementsSource - */ - private $statements_source; - /** - * @var Codebase - */ - private $codebase; + private Expr $expr; + private Context $context; + private StatementsSource $statements_source; + private Codebase $codebase; /** * @var FileManipulation[] */ - private $file_replacements; + private array $file_replacements; /** * Called after an expression has been checked diff --git a/src/Psalm/Plugin/EventHandler/Event/AfterFileAnalysisEvent.php b/src/Psalm/Plugin/EventHandler/Event/AfterFileAnalysisEvent.php index a1a2eb7dd1d..ec468ced212 100644 --- a/src/Psalm/Plugin/EventHandler/Event/AfterFileAnalysisEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/AfterFileAnalysisEvent.php @@ -10,26 +10,14 @@ final class AfterFileAnalysisEvent { - /** - * @var StatementsSource - */ - private $statements_source; - /** - * @var Context - */ - private $file_context; - /** - * @var FileStorage - */ - private $file_storage; - /** - * @var Codebase - */ - private $codebase; + private StatementsSource $statements_source; + private Context $file_context; + private FileStorage $file_storage; + private Codebase $codebase; /** * @var Stmt[] */ - private $stmts; + private array $stmts; /** * Called after a file has been checked diff --git a/src/Psalm/Plugin/EventHandler/Event/AfterFunctionCallAnalysisEvent.php b/src/Psalm/Plugin/EventHandler/Event/AfterFunctionCallAnalysisEvent.php index 4855c19f8b9..96b463c7d65 100644 --- a/src/Psalm/Plugin/EventHandler/Event/AfterFunctionCallAnalysisEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/AfterFunctionCallAnalysisEvent.php @@ -11,34 +11,19 @@ final class AfterFunctionCallAnalysisEvent { - /** - * @var FuncCall - */ - private $expr; + private FuncCall $expr; /** * @var non-empty-string */ - private $function_id; - /** - * @var Context - */ - private $context; - /** - * @var StatementsSource - */ - private $statements_source; - /** - * @var Codebase - */ - private $codebase; - /** - * @var Union - */ - private $return_type_candidate; + private string $function_id; + private Context $context; + private StatementsSource $statements_source; + private Codebase $codebase; + private Union $return_type_candidate; /** * @var FileManipulation[] */ - private $file_replacements; + private array $file_replacements; /** * @param non-empty-string $function_id diff --git a/src/Psalm/Plugin/EventHandler/Event/AfterFunctionLikeAnalysisEvent.php b/src/Psalm/Plugin/EventHandler/Event/AfterFunctionLikeAnalysisEvent.php index 6429d808f86..2c5b1fa81cb 100644 --- a/src/Psalm/Plugin/EventHandler/Event/AfterFunctionLikeAnalysisEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/AfterFunctionLikeAnalysisEvent.php @@ -12,34 +12,16 @@ final class AfterFunctionLikeAnalysisEvent { - /** - * @var Node\FunctionLike - */ - private $stmt; - /** - * @var FunctionLikeStorage - */ - private $functionlike_storage; - /** - * @var StatementsSource - */ - private $statements_source; - /** - * @var Codebase - */ - private $codebase; + private Node\FunctionLike $stmt; + private FunctionLikeStorage $functionlike_storage; + private StatementsSource $statements_source; + private Codebase $codebase; /** * @var FileManipulation[] */ - private $file_replacements; - /** - * @var NodeTypeProvider - */ - private $node_type_provider; - /** - * @var Context - */ - private $context; + private array $file_replacements; + private NodeTypeProvider $node_type_provider; + private Context $context; /** * Called after a statement has been checked diff --git a/src/Psalm/Plugin/EventHandler/Event/AfterMethodCallAnalysisEvent.php b/src/Psalm/Plugin/EventHandler/Event/AfterMethodCallAnalysisEvent.php index 0a15219650e..b0ad1ef31d5 100644 --- a/src/Psalm/Plugin/EventHandler/Event/AfterMethodCallAnalysisEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/AfterMethodCallAnalysisEvent.php @@ -17,38 +17,17 @@ final class AfterMethodCallAnalysisEvent * @var MethodCall|StaticCall */ private $expr; - /** - * @var string - */ - private $method_id; - /** - * @var string - */ - private $appearing_method_id; - /** - * @var string - */ - private $declaring_method_id; - /** - * @var Context - */ - private $context; - /** - * @var StatementsSource - */ - private $statements_source; - /** - * @var Codebase - */ - private $codebase; + private string $method_id; + private string $appearing_method_id; + private string $declaring_method_id; + private Context $context; + private StatementsSource $statements_source; + private Codebase $codebase; /** * @var FileManipulation[] */ - private $file_replacements; - /** - * @var Union|null - */ - private $return_type_candidate; + private array $file_replacements; + private ?Union $return_type_candidate; /** * @param MethodCall|StaticCall $expr diff --git a/src/Psalm/Plugin/EventHandler/Event/AfterStatementAnalysisEvent.php b/src/Psalm/Plugin/EventHandler/Event/AfterStatementAnalysisEvent.php index 6dcdc50de8a..f4b5473f9df 100644 --- a/src/Psalm/Plugin/EventHandler/Event/AfterStatementAnalysisEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/AfterStatementAnalysisEvent.php @@ -10,26 +10,14 @@ final class AfterStatementAnalysisEvent { - /** - * @var Stmt - */ - private $stmt; - /** - * @var Context - */ - private $context; - /** - * @var StatementsSource - */ - private $statements_source; - /** - * @var Codebase - */ - private $codebase; + private Stmt $stmt; + private Context $context; + private StatementsSource $statements_source; + private Codebase $codebase; /** * @var FileManipulation[] */ - private $file_replacements; + private array $file_replacements; /** * Called after a statement has been checked diff --git a/src/Psalm/Plugin/EventHandler/Event/BeforeFileAnalysisEvent.php b/src/Psalm/Plugin/EventHandler/Event/BeforeFileAnalysisEvent.php index f8fa106680a..5a1e78e2421 100644 --- a/src/Psalm/Plugin/EventHandler/Event/BeforeFileAnalysisEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/BeforeFileAnalysisEvent.php @@ -9,22 +9,10 @@ final class BeforeFileAnalysisEvent { - /** - * @var StatementsSource - */ - private $statements_source; - /** - * @var Context - */ - private $file_context; - /** - * @var FileStorage - */ - private $file_storage; - /** - * @var Codebase - */ - private $codebase; + private StatementsSource $statements_source; + private Context $file_context; + private FileStorage $file_storage; + private Codebase $codebase; /** * Called before a file has been checked diff --git a/src/Psalm/Plugin/EventHandler/Event/FunctionExistenceProviderEvent.php b/src/Psalm/Plugin/EventHandler/Event/FunctionExistenceProviderEvent.php index 04f01b12d40..3edaf09322e 100644 --- a/src/Psalm/Plugin/EventHandler/Event/FunctionExistenceProviderEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/FunctionExistenceProviderEvent.php @@ -6,14 +6,8 @@ final class FunctionExistenceProviderEvent { - /** - * @var StatementsSource - */ - private $statements_source; - /** - * @var string - */ - private $function_id; + private StatementsSource $statements_source; + private string $function_id; /** * Use this hook for informing whether or not a global function exists. If you know the function does diff --git a/src/Psalm/Plugin/EventHandler/Event/FunctionParamsProviderEvent.php b/src/Psalm/Plugin/EventHandler/Event/FunctionParamsProviderEvent.php index 3957713b173..23f3e05ff15 100644 --- a/src/Psalm/Plugin/EventHandler/Event/FunctionParamsProviderEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/FunctionParamsProviderEvent.php @@ -9,26 +9,14 @@ final class FunctionParamsProviderEvent { - /** - * @var StatementsSource - */ - private $statements_source; - /** - * @var string - */ - private $function_id; + private StatementsSource $statements_source; + private string $function_id; /** * @var PhpParser\Node\Arg[] */ - private $call_args; - /** - * @var Context|null - */ - private $context; - /** - * @var CodeLocation|null - */ - private $code_location; + private array $call_args; + private ?Context $context; + private ?CodeLocation $code_location; /** * @param list $call_args diff --git a/src/Psalm/Plugin/EventHandler/Event/FunctionReturnTypeProviderEvent.php b/src/Psalm/Plugin/EventHandler/Event/FunctionReturnTypeProviderEvent.php index 61d749c3fc3..c620637bb4d 100644 --- a/src/Psalm/Plugin/EventHandler/Event/FunctionReturnTypeProviderEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/FunctionReturnTypeProviderEvent.php @@ -3,32 +3,21 @@ namespace Psalm\Plugin\EventHandler\Event; use PhpParser; +use PhpParser\Node\Expr\FuncCall; use Psalm\CodeLocation; use Psalm\Context; use Psalm\StatementsSource; final class FunctionReturnTypeProviderEvent { - /** - * @var StatementsSource - */ - private $statements_source; + private StatementsSource $statements_source; /** * @var non-empty-string */ - private $function_id; - /** - * @var PhpParser\Node\Expr\FuncCall - */ - private $stmt; - /** - * @var Context - */ - private $context; - /** - * @var CodeLocation - */ - private $code_location; + private string $function_id; + private FuncCall $stmt; + private Context $context; + private CodeLocation $code_location; /** * Use this hook for providing custom return type logic. If this plugin does not know what a function should @@ -41,7 +30,7 @@ final class FunctionReturnTypeProviderEvent public function __construct( StatementsSource $statements_source, string $function_id, - PhpParser\Node\Expr\FuncCall $stmt, + FuncCall $stmt, Context $context, CodeLocation $code_location ) { @@ -83,7 +72,7 @@ public function getCodeLocation(): CodeLocation return $this->code_location; } - public function getStmt(): PhpParser\Node\Expr\FuncCall + public function getStmt(): FuncCall { return $this->stmt; } diff --git a/src/Psalm/Plugin/EventHandler/Event/MethodExistenceProviderEvent.php b/src/Psalm/Plugin/EventHandler/Event/MethodExistenceProviderEvent.php index 6941df52a53..ff1fb8f48e5 100644 --- a/src/Psalm/Plugin/EventHandler/Event/MethodExistenceProviderEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/MethodExistenceProviderEvent.php @@ -7,22 +7,10 @@ final class MethodExistenceProviderEvent { - /** - * @var string - */ - private $fq_classlike_name; - /** - * @var string - */ - private $method_name_lowercase; - /** - * @var StatementsSource|null - */ - private $source; - /** - * @var CodeLocation|null - */ - private $code_location; + private string $fq_classlike_name; + private string $method_name_lowercase; + private ?StatementsSource $source; + private ?CodeLocation $code_location; /** * Use this hook for informing whether or not a method exists on a given object. If you know the method does diff --git a/src/Psalm/Plugin/EventHandler/Event/MethodParamsProviderEvent.php b/src/Psalm/Plugin/EventHandler/Event/MethodParamsProviderEvent.php index a0f38c2ff74..eb366963c66 100644 --- a/src/Psalm/Plugin/EventHandler/Event/MethodParamsProviderEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/MethodParamsProviderEvent.php @@ -9,30 +9,15 @@ final class MethodParamsProviderEvent { - /** - * @var string - */ - private $fq_classlike_name; - /** - * @var string - */ - private $method_name_lowercase; + private string $fq_classlike_name; + private string $method_name_lowercase; /** * @var list|null */ - private $call_args; - /** - * @var StatementsSource|null - */ - private $statements_source; - /** - * @var Context|null - */ - private $context; - /** - * @var CodeLocation|null - */ - private $code_location; + private ?array $call_args; + private ?StatementsSource $statements_source; + private ?Context $context; + private ?CodeLocation $code_location; /** * @param list $call_args diff --git a/src/Psalm/Plugin/EventHandler/Event/MethodReturnTypeProviderEvent.php b/src/Psalm/Plugin/EventHandler/Event/MethodReturnTypeProviderEvent.php index 12fdc590f27..f1a034a8689 100644 --- a/src/Psalm/Plugin/EventHandler/Event/MethodReturnTypeProviderEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/MethodReturnTypeProviderEvent.php @@ -10,26 +10,14 @@ final class MethodReturnTypeProviderEvent { - /** - * @var StatementsSource - */ - private $source; - /** - * @var string - */ - private $fq_classlike_name; + private StatementsSource $source; + private string $fq_classlike_name; /** * @var lowercase-string */ - private $method_name_lowercase; - /** - * @var Context - */ - private $context; - /** - * @var CodeLocation - */ - private $code_location; + private string $method_name_lowercase; + private Context $context; + private CodeLocation $code_location; /** * @var PhpParser\Node\Expr\MethodCall|PhpParser\Node\Expr\StaticCall */ @@ -37,15 +25,12 @@ final class MethodReturnTypeProviderEvent /** * @var Union[]|null */ - private $template_type_parameters; - /** - * @var string|null - */ - private $called_fq_classlike_name; + private ?array $template_type_parameters; + private ?string $called_fq_classlike_name; /** * @var lowercase-string|null */ - private $called_method_name_lowercase; + private ?string $called_method_name_lowercase; /** * Use this hook for providing custom return type logic. If this plugin does not know what a method should return diff --git a/src/Psalm/Plugin/EventHandler/Event/MethodVisibilityProviderEvent.php b/src/Psalm/Plugin/EventHandler/Event/MethodVisibilityProviderEvent.php index 22896110f19..ffdf8e54b4f 100644 --- a/src/Psalm/Plugin/EventHandler/Event/MethodVisibilityProviderEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/MethodVisibilityProviderEvent.php @@ -8,26 +8,11 @@ final class MethodVisibilityProviderEvent { - /** - * @var StatementsSource - */ - private $source; - /** - * @var string - */ - private $fq_classlike_name; - /** - * @var string - */ - private $method_name_lowercase; - /** - * @var Context - */ - private $context; - /** - * @var CodeLocation|null - */ - private $code_location; + private StatementsSource $source; + private string $fq_classlike_name; + private string $method_name_lowercase; + private Context $context; + private ?CodeLocation $code_location; /** @internal */ public function __construct( diff --git a/src/Psalm/Plugin/EventHandler/Event/PropertyExistenceProviderEvent.php b/src/Psalm/Plugin/EventHandler/Event/PropertyExistenceProviderEvent.php index b61d5f093cd..20681f01e61 100644 --- a/src/Psalm/Plugin/EventHandler/Event/PropertyExistenceProviderEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/PropertyExistenceProviderEvent.php @@ -8,30 +8,12 @@ final class PropertyExistenceProviderEvent { - /** - * @var string - */ - private $fq_classlike_name; - /** - * @var string - */ - private $property_name; - /** - * @var bool - */ - private $read_mode; - /** - * @var StatementsSource|null - */ - private $source; - /** - * @var Context|null - */ - private $context; - /** - * @var CodeLocation|null - */ - private $code_location; + private string $fq_classlike_name; + private string $property_name; + private bool $read_mode; + private ?StatementsSource $source; + private ?Context $context; + private ?CodeLocation $code_location; /** * Use this hook for informing whether or not a property exists on a given object. If you know the property does diff --git a/src/Psalm/Plugin/EventHandler/Event/PropertyTypeProviderEvent.php b/src/Psalm/Plugin/EventHandler/Event/PropertyTypeProviderEvent.php index da9b31700cd..2f147607506 100644 --- a/src/Psalm/Plugin/EventHandler/Event/PropertyTypeProviderEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/PropertyTypeProviderEvent.php @@ -7,26 +7,11 @@ final class PropertyTypeProviderEvent { - /** - * @var string - */ - private $fq_classlike_name; - /** - * @var string - */ - private $property_name; - /** - * @var bool - */ - private $read_mode; - /** - * @var StatementsSource|null - */ - private $source; - /** - * @var Context|null - */ - private $context; + private string $fq_classlike_name; + private string $property_name; + private bool $read_mode; + private ?StatementsSource $source; + private ?Context $context; /** @internal */ public function __construct( diff --git a/src/Psalm/Plugin/EventHandler/Event/PropertyVisibilityProviderEvent.php b/src/Psalm/Plugin/EventHandler/Event/PropertyVisibilityProviderEvent.php index 8d934d9f58b..8a99c821fc1 100644 --- a/src/Psalm/Plugin/EventHandler/Event/PropertyVisibilityProviderEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/PropertyVisibilityProviderEvent.php @@ -8,30 +8,12 @@ final class PropertyVisibilityProviderEvent { - /** - * @var StatementsSource - */ - private $source; - /** - * @var string - */ - private $fq_classlike_name; - /** - * @var string - */ - private $property_name; - /** - * @var bool - */ - private $read_mode; - /** - * @var Context - */ - private $context; - /** - * @var CodeLocation - */ - private $code_location; + private StatementsSource $source; + private string $fq_classlike_name; + private string $property_name; + private bool $read_mode; + private Context $context; + private CodeLocation $code_location; /** @internal */ public function __construct( diff --git a/src/Psalm/Plugin/EventHandler/Event/StringInterpreterEvent.php b/src/Psalm/Plugin/EventHandler/Event/StringInterpreterEvent.php index db782f4d69d..e5d6c282843 100644 --- a/src/Psalm/Plugin/EventHandler/Event/StringInterpreterEvent.php +++ b/src/Psalm/Plugin/EventHandler/Event/StringInterpreterEvent.php @@ -4,10 +4,7 @@ final class StringInterpreterEvent { - /** - * @var string - */ - private $value; + private string $value; /** * Called after a statement has been checked diff --git a/src/Psalm/PluginFileExtensionsSocket.php b/src/Psalm/PluginFileExtensionsSocket.php index ae9cf95bcd5..9d5e9c03537 100644 --- a/src/Psalm/PluginFileExtensionsSocket.php +++ b/src/Psalm/PluginFileExtensionsSocket.php @@ -14,25 +14,22 @@ final class PluginFileExtensionsSocket implements FileExtensionsInterface { - /** - * @var Config - */ - private $config; + private Config $config; /** * @var array> */ - private $additionalFileTypeScanners = []; + private array $additionalFileTypeScanners = []; /** * @var array> */ - private $additionalFileTypeAnalyzers = []; + private array $additionalFileTypeAnalyzers = []; /** * @var list */ - private $additionalFileExtensions = []; + private array $additionalFileExtensions = []; /** * @internal diff --git a/src/Psalm/PluginRegistrationSocket.php b/src/Psalm/PluginRegistrationSocket.php index 51d121a909e..aebfbe9605f 100644 --- a/src/Psalm/PluginRegistrationSocket.php +++ b/src/Psalm/PluginRegistrationSocket.php @@ -21,11 +21,9 @@ final class PluginRegistrationSocket implements RegistrationInterface { - /** @var Config */ - private $config; + private Config $config; - /** @var Codebase */ - private $codebase; + private Codebase $codebase; /** * @internal diff --git a/src/Psalm/Progress/DefaultProgress.php b/src/Psalm/Progress/DefaultProgress.php index 2bacfb0758f..7308a919b8a 100644 --- a/src/Psalm/Progress/DefaultProgress.php +++ b/src/Psalm/Progress/DefaultProgress.php @@ -16,7 +16,7 @@ class DefaultProgress extends LongProgress private const PROGRESS_BAR_SAMPLE_INTERVAL = 0.1; /** @var float the last time when the progress bar UI was updated */ - private $previous_update_time = 0.0; + private float $previous_update_time = 0.0; public function taskDone(int $level): void { diff --git a/src/Psalm/Type/Reconciler.php b/src/Psalm/Type/Reconciler.php index d0aefbd8ee9..2d9c7f55d9a 100644 --- a/src/Psalm/Type/Reconciler.php +++ b/src/Psalm/Type/Reconciler.php @@ -81,7 +81,7 @@ class Reconciler public const RECONCILIATION_EMPTY = 2; /** @var array> */ - private static $broken_paths = []; + private static array $broken_paths = []; /** * Takes two arrays and consolidates them, removing null values from existing types where applicable.