40 lines
901 B
PHP
40 lines
901 B
PHP
<?php
|
|
declare(strict_types = 1);
|
|
|
|
namespace LanguageServer\Client;
|
|
|
|
use LanguageServer\ClientHandler;
|
|
use LanguageServer\Protocol\Message;
|
|
use Sabre\Event\Promise;
|
|
|
|
/**
|
|
* Provides method handlers for all textDocument/* methods
|
|
*/
|
|
class TextDocument
|
|
{
|
|
/**
|
|
* @var ClientHandler
|
|
*/
|
|
private $handler;
|
|
|
|
public function __construct(ClientHandler $handler)
|
|
{
|
|
$this->handler = $handler;
|
|
}
|
|
|
|
/**
|
|
* Diagnostics notification are sent from the server to the client to signal results of validation runs.
|
|
*
|
|
* @param string $uri
|
|
* @param Diagnostic[] $diagnostics
|
|
* @return Promise <void>
|
|
*/
|
|
public function publishDiagnostics(string $uri, array $diagnostics): Promise
|
|
{
|
|
return $this->handler->notify('textDocument/publishDiagnostics', [
|
|
'uri' => $uri,
|
|
'diagnostics' => $diagnostics
|
|
]);
|
|
}
|
|
}
|