1
0
Fork 0
Commit Graph

41 Commits (18c6ccd137b0bbe794a854fb8e9b18d574136dc4)

Author SHA1 Message Date
dantleech 18c6ccd137 refactor: use protocol package (#661)
Adapts the Language Server to use the extracted php language server protocol
2018-09-09 14:37:35 +02:00
Phil Nelson 6894d85aaf fix(DefinitionResolver): resolve self correctly for docblock @return self (#576) 2018-01-09 01:38:18 -08:00
Felix Becker 20960a8b9f
fix(DefinitionResolver): find variables in sibling children (#568)
Fixes #566
2017-12-30 22:26:51 -08:00
Phil Nelson 1cfba8b6bb fix(DefinitionResolver): don't crash if foreach key isn't a variable (#564) 2017-12-24 17:55:48 -08:00
Phil Nelson 425b2390b5 fix(DefinitionResolver): fix crash on unknown foreach type (#562)
Fix when unknown type is found in foreach expression
2017-12-24 01:52:49 -08:00
Phil Nelson 63da051e72 fix(DefinitionResolver): fix methods with self return type (#550) 2017-12-22 18:02:37 -08:00
Phil Nelson 9eea26df71 feat: foreach completion (#551) 2017-12-17 17:55:12 -08:00
phil-nelson a40cf731f7 feat: Signature help (#547)
closes #18
2017-12-09 21:10:43 -08:00
Felix Becker 80ef8ff503
fix(indexing): properly resolve self, static and parent keywords (#532)
Previously we would dump static, self and parent as literal FQNs into the index.
2017-11-18 16:59:57 -08:00
Jens Hausdorf 1edbe35609 refactor: use FunctionLike Interface (#505) 2017-10-30 03:33:19 -07:00
Felix Becker 7ae6452d1a
refactor(index): rename isGlobal to isMember (#511)
isGlobal was confusing because a non-member can be considered global vs namespaced
2017-10-29 17:45:06 -07:00
Jens Hausdorf fbaa7b3cc5 refactor: use ClassLike interface (#506) 2017-10-28 12:27:32 -07:00
Felix Becker 16cf8f53e9 fix(docblocks): update to phpdocumentor/reflection-docblock ^4.0.0
closes #139
2017-10-22 21:30:38 -07:00
Ivan Bozhanov 35f33c8c91 Fluent interfaces support (#421) 2017-07-07 13:18:19 +02:00
Ivan Bozhanov dae3f2576c Add $this completion (#419) 2017-06-19 12:23:43 +02:00
Felix Becker 0e3727a8d6 Improve CompletionProvider (#412)
- Better performance
- More documentation
- Add field to Definition for global namespace fallback

Fixes #380
2017-06-16 20:31:13 +02:00
Felix Becker 4a98afe540 Fix docblock union types 2017-06-15 17:03:25 +02:00
Rob Lourens 3b633369a7 Fix error getting completions for 'new static' type (#405) 2017-06-15 12:44:03 +02:00
Rob Lourens f10680e441 Fix variable type from method return value, add tests (#393) 2017-06-10 11:10:15 +02:00
Jens Hausdorf 42d0c7b714 Improve handling of abstract classes (#391) 2017-06-09 22:12:32 +02:00
Sara Itani 7f427a1215 Adopt Microsoft/tolerant-php-parser (#357) 2017-06-09 20:25:30 +02:00
Stephan Unverwerth 08cf1a3fd7 Allow getting type from define() node (#363)
* Allow getting type from define() node
- fixes #364

* Add test case for DefinitionResolver
2017-04-24 11:11:40 +02:00
Jens Hausdorf b1cc7bf6b0 Support constants with define() (#347) 2017-04-17 17:03:08 +02:00
Talv 14a6d65832 Fix missing '()' for function definition (#340) 2017-04-02 00:30:10 +02:00
Jens Hausdorf 4d0a0a2a10 show anything from a doc comment block (#315) 2017-03-19 12:15:39 +01:00
Matthew Brown 56bd465bf8 DefinitionResolver fixes (#307)
* Fix class references

* Fix return types
2017-02-20 10:28:49 +01:00
Felix Becker 5100d89617 Make resolveExpressionNodeToType() handle null (#277) 2017-02-04 12:52:04 +01:00
Ivan Bozhanov 43a91b0d09 Handle hover for $this (#249) 2017-01-19 15:47:11 +01:00
Felix Becker 662143abad Fix wrong function call in DefinitionResolver 2016-12-24 16:35:20 +01:00
Felix Becker 2005518dfe Support find-all-references for namespaces (#221) 2016-12-17 03:46:08 +01:00
Felix Becker 83618fee2e Avoid multiple references with function calls (#220) 2016-12-16 23:42:47 +01:00
Felix Becker a4a13e6528 Add support for inherited members (#218)
in completion, definition, references, hover etc
2016-12-16 01:40:17 +01:00
Felix Becker cc9d5e987b Fix wrong class name 2016-12-15 18:01:44 +01:00
Felix Becker b8a113ddd0 Correct reference collection for New_ nodes
Closes #202
2016-12-13 02:40:51 +01:00
Felix Becker a7d77d844e Add Index classes and stubs (#214) 2016-12-13 01:51:02 +01:00
Felix Becker 10fb3c92e0 Completion (#165)
* Add support for method/property completion

* Move completion fixtures into directory

* Add support for variable suggestions

Refactor logic into CompletionProvider class

* Allow getTypeFromNode() to take Variable nodes

* Use property and constant values

* Fix using @var tag for variables

* Improve completion

* classes
* variables with prefix filtering

* Make FQNs more distinct

* use -> for instance methods/properties
* use ::$ for static properties

* Add tests for static access

* Properly filter completion on empty property

* Fix existing tests

* Add support for static access without prefix

* Fix testFullyQualifiedClass

* Add missing fixtures

* Correct file number in init test

* Only insert backslash if not typed yet

* Completion for keywords and bug fixes

* Correct variable insertion

* Support completion for namespaces

* Use CompletionList

* Always set isIncomplete to true

* Update PHPCodeSniffer

* Remove unused method

* And the call

* Handle case where FQN could not be resolved
2016-11-30 22:23:51 +01:00
Felix Becker 8f6ee8dd02 Handle null return from getClosestNode() 2016-11-19 12:03:43 +01:00
Felix Becker 00bc8537a6 Support compound types when resolving FQNs 2016-11-19 11:45:25 +01:00
Felix Becker fb84741d55 Add missing property 2016-11-19 06:37:07 +01:00
Felix Becker c2ae7cd022 FIx crashes when tag doesn't have a type 2016-11-19 06:36:57 +01:00
Felix Becker 33211c68ca Resolve expressions recursively (#155)
* Add Definition class
* Add recursive DefinitionResolver
* Cache hover
2016-11-18 15:22:24 +01:00