1
0
Fork 0
php-language-server/bin/php-language-server.php

34 lines
939 B
PHP
Raw Normal View History

2016-08-12 08:14:36 +00:00
<?php
ini_set('memory_limit', '-1');
2016-08-25 14:58:57 +00:00
use LanguageServer\{LanguageServer, ProtocolStreamReader, ProtocolStreamWriter};
2016-08-12 08:14:36 +00:00
use Sabre\Event\Loop;
2016-08-25 14:51:34 +00:00
foreach ([__DIR__ . '/../../../autoload.php', __DIR__ . '/../autoload.php', __DIR__ . '/../vendor/autoload.php'] as $file) {
if (file_exists($file)) {
require $file;
break;
}
}
2016-08-12 08:14:36 +00:00
if (count($argv) >= 3 && $argv[1] === '--tcp') {
$address = $argv[2];
$socket = stream_socket_client('tcp://' . $address, $errno, $errstr);
if ($socket === false) {
fwrite(STDERR, "Could not connect to language client. Error $errno\n");
fwrite(STDERR, "$errstr\n");
exit(1);
}
$inputStream = $outputStream = $socket;
} else {
$inputStream = STDIN;
$outputStream = STDOUT;
}
stream_set_blocking($inputStream, false);
$server = new LanguageServer(new ProtocolStreamReader($inputStream), new ProtocolStreamWriter($outputStream));
2016-08-25 13:27:14 +00:00
Loop\run();