Felix Becker
7668a0c695
Catch parse error in indexing ( #83 )
2016-10-19 12:41:53 +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
Michal Niewrzal
cba4357856
Fix file name for CompletionItemKind ( #85 )
2016-10-17 10:17:18 +02:00
Felix Becker
3290ec31b2
Cache vendor dir on Travis
2016-10-14 09:08:40 +02:00
Felix Becker
1e6917ef55
Add size limit of 0.5MB for indexing ( #80 )
2016-10-14 09:06:56 +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
66b5176a43
Allow %-encoded colon after drive letter in URI
2016-10-12 00:53:21 +02:00
Michal Niewrzal
f81d03948b
Update README with --memory-limit param ( #70 )
2016-10-11 21:14:49 +02:00
Michal Niewrzal
8f7f975408
Add command line parameter for memory limit ( #68 )
2016-10-11 16:50:55 +02:00
Michal Niewrzal
c667f83371
Remove unused use statements ( #67 )
2016-10-11 16:23:09 +02:00
Felix Becker
23b127a986
Add Symfony ErrorHandler ( #58 )
2016-10-11 14:50:10 +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
18ac760bc6
Set process title
2016-10-10 12:59:07 +02:00
Felix Becker
03e4e34a4e
Don't %-decode the document URI
2016-10-09 19:09:28 +02:00
Felix Becker
aff9edb630
Don't crash on array assignments
2016-10-09 19:06:46 +02:00
Felix Becker
1689e4d0dc
Extend symbol search tests
2016-10-09 16:37:17 +02:00
Felix Becker
a74bf90d77
Split WorkspaceTest
2016-10-09 16:37:17 +02:00
Felix Becker
7032f806d4
Merge pull request #49 from felixfbecker/definition
...
Go to definition support
2016-10-09 16:25:58 +02:00
Felix Becker
0387f28759
Rename NodeVisitors NS to NodeVisitor
2016-10-09 16:03:56 +02:00
Felix Becker
7f95b76cf8
Refactor DefinitionResolver
...
Move logic to PhpDocument::getDefininedFqn() for reusability
Fix DefinitionResolverTest
2016-10-09 15:58:39 +02:00
Felix Becker
7322a6c658
Add fromNode() factories and correct columns
2016-10-09 15:58:39 +02:00
Felix Becker
3a880934e5
Split up PhpDocument::getDefinitionByNode()
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
827ab4c842
Add Position::compare() and Range::includes()
2016-10-09 15:51:42 +02:00
Felix Becker
fbdf1aa414
Add ownerDocument attribute to nodes
2016-10-09 15:51:42 +02:00
Felix Becker
987308fc0a
Refactor TextDocument tests into separate classes
2016-10-09 15:51:42 +02:00
Felix Becker
48c71e5bc1
Add method to find out node at position
...
Keep AST in memory
2016-10-09 15:51:42 +02:00
Felix Becker
4786fe173c
Decorate all nodes with parent, sibling references
2016-10-08 15:18:31 +02:00
Felix Becker
658a27f5a5
Add more symbols to symbol test
...
* constants
* static properties
* static methods
2016-10-08 15:02:04 +02:00
Felix Becker
063c7f9ad2
Move NodeVisitors to own namespace
2016-10-08 15:01:58 +02:00
Felix Becker
6cb916e28d
Improve inline documentation and code style
2016-10-08 13:45:10 +02:00
Michal Niewrzal
c962f81924
Fix for failing tests ( #44 )
2016-10-02 20:19:38 +02:00
Stephan Unverwerth
0c758ec815
Fix issue #42 and add regression test ( #43 )
2016-09-30 15:13:54 +02:00
Felix Becker
dfc80a5c66
Convert indentation to spaces in phpunit.xml.dist
2016-09-30 12:20:53 +02:00
Felix Becker
5bc228a8e0
Add Gitter badge
2016-09-30 12:09:33 +02:00
Felix Becker
6917f1c789
Add more declare(strict_types = 1) ( #39 )
2016-09-30 11:54:49 +02:00
Felix Becker
9fd9a02e19
Change fixtures naming convention
2016-09-30 11:38:46 +02:00
Stephan Unverwerth
501d26e1d4
Global symbol search ( #31 )
...
* Implemented workspace symbol search
* Fixed missing TextEdit using declaration
* Fixed generating uri when parsing next file.
* Cleaned up code. Fixed tests
* Fixed PHPDoc for LanguageServer::initialize()
* Moved utility functions to utils.php
* Added tests for pathToUri and findFilesRecursive
* Added command line argument for socket communication
* Fixed local variable detection and containerName generation in SymbolFinder
* Fixed formatting in ProtocolStreamReader
* Store text content in PHPDocument, removed stmts, regenerate on demand
* Fixed local variable detection and containerName generation in SymbolFinder.
* Added Tests for Project and Workspace
* Added test for didChange event
* Modified lexer error handling
* Removed file that shouldn't have been committed.
* Updated sabre/event dependency to 4.0.0
* Updated readme.md to show tcp option
* make input stream non-blocking
* Correct code style
* Use triple equals
* Revert change in SymbolFinder
* Optimize processFile() a bit
* Use MessageType enum instead of number literal
* Add missing space
* Fixed ProtocolStreamWriter for nonblocking connection.
* Suppress fwrite() notice when not all bytes could be written.
* Fix another code style issue
* Throw Exceotion instead of Error
* Added ProtocolStreamWriter test
* Correct workspace/symbol documentation
* Improve exception in ProtocolStreamWriter::write()
2016-09-30 11:30:08 +02:00
Michal Niewrzal
bc2d6b9b59
Add phpunit configuration file ( #37 )
2016-09-29 16:09:23 +02:00
Felix Becker
41e9fb7e8a
Update PHPParser to 3.0.0beta1 ( #33 )
2016-09-23 18:56:04 +02:00