Felix Becker
03bbf5f4ba
Enable LS to operate without accessing the file system ( #136 )
...
This PR decouples the LS from direct file system access by implementing the proposals for workspace/files and textDocument/content under workspace/xfiles and textDocument/xcontent. The requests are only used when the client expressed support for them through ClientCapabilities, otherwise direct FS access is used.
This turns document content retrieval and recursive file search into async operations.
In turn, all server handlers can now operate async by returning a promise.
2016-11-14 10:25:44 +01:00
Felix Becker
04ef6c8adf
Handle Client responses ( #128 )
2016-10-31 11:47:21 +01:00
Michal Niewrzal
867196babf
Definition for instanceof class ( #117 )
2016-10-26 20:56:02 +02:00
Michal Niewrzal
8a354ba1af
Definition for use function ( #116 )
2016-10-26 11:47:02 +02:00
ADmad
5ecab683eb
Linting ( #107 )
...
* Update travis config.
* Add phpcs config file.
* Exclude rules
* Ignore failures in tests
* Automatic fixes
* Inline ParsingMode enum as class constants
* Loosen FormatTest because of excluded rule
2016-10-24 19:35:37 +02:00
Michal Niewrzal
a19d225a7a
Fix definition for method return type ( #76 )
2016-10-21 16:51:11 +02:00
Felix Becker
9cbca1cd7f
Revert "Use SymbolKind::FIELD for class fields ( #78 )"
...
This reverts commit 2980941fd1
.
2016-10-20 01:53:07 +02:00
Felix Becker
e19670c141
Resolve self, static, parent ( #99 )
2016-10-20 00:18:36 +02:00
Felix Becker
6bd1b10e4d
Resolve $this ( #98 )
2016-10-20 00:10:47 +02:00
Felix Becker
4db7ffd88c
Hover ( #50 )
...
* Add hover support
* Use context in DocBlockParser
* Improve DocBlockParser error handling
* Improve hover output
* Add more tests
2016-10-19 12:31:32 +02:00
Felix Becker
2e03aa32f3
Fix class constant tests
2016-10-19 12:26:22 +02:00
Felix Becker
6b6ec8c105
Symbol test refactor ( #92 )
...
* Don't use json_decode in symbol tests
* Remove custom setUp()
* Use getDefinitionLocation()
* TextDocumentTestCase -> ServerTestCase
* Refactor Workspace\SymbolTest
2016-10-18 23:09:51 +02:00
Felix Becker
cdcfaf7849
Refactor Definition\GlobalFallbackTest
2016-10-18 15:18:50 +02:00
Felix Becker
691a0bddfe
Refactor tests for easier changes to fixtures ( #87 )
2016-10-18 10:48:16 +02:00
Felix Becker
2980941fd1
Use SymbolKind::FIELD for class fields ( #78 )
2016-10-14 09:02:42 +02:00
Felix Becker
c479969758
Add support for definition of static class access ( #72 )
...
Getting the definition of TestClass in
TestClass::staticTestMethod();
echo TestClass::$staticTestProperty;
echo TestClass::TEST_CLASS_CONST;
2016-10-12 12:40:13 +02:00
Felix Becker
6fe01183b0
References ( #52 )
...
* Adds support for textDocument/references
* Adds tests for global definitions and global fallback
2016-10-12 01:45:15 +02:00
Felix Becker
15e004fb9b
Only hold AST for open files in memory ( #63 )
...
* Only hold content for open files in memory
* Add test for didClose
* Remove invalid URI formatting test
* Don't keep AST in memory
* Fix symbol search crash
* Change Project map to FQN => URI
Removes PhpDocument::load(), isLoaded(), unload()
* Add docblocks
* Rename some functions
* Extend documentation
* Correct docblock
2016-10-11 14:42:56 +02:00
Kaloyan Raev
d41cde2039
Return empty array instead of null for empty definitions result ( #64 )
2016-10-11 10:26:46 +02:00
Kaloyan Raev
1f808c59e1
Fixes #59 : Handle correctly negative endLine in PHP Parser errors ( #62 )
...
* Fixes #59 : Handle correctly negative endLine in PHP Parser errors
* Clearer $startLine calculation
* Add missing test file
* Better calculation of endLine
* Remove trailing spaces
2016-10-11 10:15:20 +02:00
Michal Niewrzal
e75c1592fc
Use PHP_CodeSniffer as a formatter ( #35 )
...
Also adds uriTopath util function
2016-10-10 15:06:02 +02:00
Felix Becker
7322a6c658
Add fromNode() factories and correct columns
2016-10-09 15:58:39 +02:00
Felix Becker
6be53ad658
Use DefinitionCollector for symbol requests
2016-10-09 15:58:39 +02:00
Felix Becker
d4757e0a24
Add textDocument/definition support
2016-10-09 15:58:39 +02:00
Felix Becker
987308fc0a
Refactor TextDocument tests into separate classes
2016-10-09 15:51:42 +02:00