diff --git a/src/Psalm/Internal/LanguageServer/LanguageClient.php b/src/Psalm/Internal/LanguageServer/LanguageClient.php index 096177d9d5c..0aed33950a6 100644 --- a/src/Psalm/Internal/LanguageServer/LanguageClient.php +++ b/src/Psalm/Internal/LanguageServer/LanguageClient.php @@ -64,7 +64,7 @@ public function __construct( public function refreshConfiguration(): void { $capabilities = $this->server->clientCapabilities; - if ($capabilities && $capabilities->workspace && $capabilities->workspace->configuration) { + if ($capabilities->workspace->configuration ?? false) { $this->workspace->requestConfiguration('psalm')->onResolve(function ($error, $value): void { if ($error) { $this->server->logError('There was an error getting configuration'); diff --git a/src/Psalm/Internal/LanguageServer/LanguageServer.php b/src/Psalm/Internal/LanguageServer/LanguageServer.php index c165b0cddac..54009b9cc5a 100644 --- a/src/Psalm/Internal/LanguageServer/LanguageServer.php +++ b/src/Psalm/Internal/LanguageServer/LanguageServer.php @@ -538,11 +538,7 @@ function () { * * @since LSP 3.16.0 */ - if ($this->clientCapabilities && - $this->clientCapabilities->textDocument && - $this->clientCapabilities->textDocument->publishDiagnostics && - $this->clientCapabilities->textDocument->publishDiagnostics->dataSupport - ) { + if ($this->clientCapabilities->textDocument->publishDiagnostics->dataSupport ?? false) { $serverCapabilities->codeActionProvider = true; } @@ -757,11 +753,7 @@ function (IssueData $issue_data): Diagnostic { * * @since LSP 3.16.0 */ - if ($this->clientCapabilities !== null && - $this->clientCapabilities->textDocument && - $this->clientCapabilities->textDocument->publishDiagnostics && - $this->clientCapabilities->textDocument->publishDiagnostics->codeDescriptionSupport - ) { + if ($this->clientCapabilities->textDocument->publishDiagnostics->codeDescriptionSupport ?? false) { $diagnostic->codeDescription = new CodeDescription($issue_data->link); } diff --git a/src/Psalm/Internal/LanguageServer/Server/TextDocument.php b/src/Psalm/Internal/LanguageServer/Server/TextDocument.php index 076b7cb26f5..1ea170a86f0 100644 --- a/src/Psalm/Internal/LanguageServer/Server/TextDocument.php +++ b/src/Psalm/Internal/LanguageServer/Server/TextDocument.php @@ -301,12 +301,8 @@ public function completion(TextDocumentIdentifier $textDocument, Position $posit [$recent_type, $gap, $offset] = $completion_data; if ($gap === '->' || $gap === '::') { - $snippetSupport = ($this->server->clientCapabilities && - $this->server->clientCapabilities->textDocument && - $this->server->clientCapabilities->textDocument->completion && - $this->server->clientCapabilities->textDocument->completion->completionItem && - $this->server->clientCapabilities->textDocument->completion->completionItem->snippetSupport) - ? true : false; + $snippetSupport = $this->server->clientCapabilities + ->textDocument->completion->completionItem->snippetSupport ?? false; $completion_items = $this->codebase->getCompletionItemsForClassishThing($recent_type, $gap, $snippetSupport); } elseif ($gap === '[') {