1
0
Fork 0
Commit Graph

173 Commits (b3f30f31f1c7979a6ada016ea536acfc7f7a9939)

Author SHA1 Message Date
Nicolas MURE b3f30f31f1
cache is backward compatible 2017-11-15 09:51:18 +01:00
Felix Becker b118c77699 Correct some docblocks 2017-11-14 22:36:07 -08:00
Felix Becker 7437d30d88 Fix formatting 2017-11-14 22:25:54 -08:00
Nicolas MURE e162d94e14
cleanup 2017-11-14 13:44:23 +01:00
Nicolas MURE cacde1ea72
use a single array to store definitions 2017-11-14 13:40:35 +01:00
Nicolas MURE 188a5df382
fix definitions storage collision (member / non member) 2017-11-14 04:41:10 +01:00
Nicolas MURE d1f85f15b6
use tree representation index 2017-11-14 02:54:18 +01:00
Nicolas MURE e9fd572a49
consider the merge of #511 2017-11-13 20:59:42 +01:00
Nicolas MURE 14f840bd2f
use correct terminology 2017-11-13 20:23:21 +01:00
Nicolas MURE e34d8e15dd
use of null coalescing operator 2017-11-13 20:22:21 +01:00
Nicolas MURE 6a36828069
avoid useless array 2017-11-13 20:22:21 +01:00
Nicolas MURE 6a41a7f0dc
add example of indexed definitions 2017-11-13 20:22:21 +01:00
Nicolas MURE 8801edb7a2
also yield URIs to save memory 2017-11-13 20:22:20 +01:00
Nicolas MURE 8768b698d5
use Generators to get definitions without wasting memory 2017-11-13 20:22:20 +01:00
Nicolas MURE ca0caf1678
store definitions under the namespaceDefinitions cache key directly 2017-11-13 20:22:20 +01:00
Nicolas MURE 6d30035c78
also remove empty namespace index 2017-11-13 20:22:20 +01:00
Nicolas MURE 17602aa768
globalDefinitions cache to speedup autocomplete 2017-11-13 20:22:20 +01:00
Nicolas MURE 18f2f4c85c
cleanup 2017-11-13 20:20:37 +01:00
Nicolas MURE 6d725a234c
speedup static access autocomplete 2017-11-13 20:18:51 +01:00
Nicolas MURE 2d91ee8eff
speedup autocomplete with ReadableIndex::getDefinitionsForNamespace 2017-11-13 20:18:11 +01:00
Felix Becker f00fd1b62c
fix(formatting): drop PHP CodeSniffer (#504)
At this point there are countless issues about the formatting done by CodeSniffer. It plain out doesn't work in many cases, overrides format options that are contributed by other extensions in VS Code and does not reuse any of our AST parsing. For that reason, I am starting to think there is no reason to keep it in here until we have proper pretty-printing support from https://github.com/Microsoft/tolerant-php-parser that actually reuses our ASTs and can work while editing. For people who want to use CodeSniffer to format their code, there could be a standalone CodeSniffer language server (like there is a TSLint language server and ESLint language server). As said, we don't reuse our state anyway.

BREAKING CHANGE: removes formatting support

closes #501
closes #474
closes #473
closes #468
closes #450
closes #445
closes #443
closes #423
closes #343
closes #296
closes #293
closes #499
closes #471
2017-11-04 23:57:51 -07: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
Felix Becker c74076d84f
fix(cache): bump cache version (#508)
the update of reflection-docblock means old caches are no longer valid.

fixes #507
2017-10-29 13:06:44 -07:00
Jens Hausdorf fbaa7b3cc5 refactor: use ClassLike interface (#506) 2017-10-28 12:27:32 -07:00
Tyson Andre 1db6b7bbb3 chore: fixes for unused variables and phpdoc (#496)
The identifier doesn't need to be generated for a notification to the
client, since there's no response
Add undeclared properties to TreeAnalyzer
Fix other bugs in phpdoc
2017-10-22 22:54:38 -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
Vincent Klaiber 3d8655d504 Update phpunit config (#488)
* Update phpunit config

* Rename DocumentHighlight class
2017-10-02 13:37:28 -07:00
Stephan Unverwerth d4443465bb Fix missing diagnostics for nodes (#484)
* Fix missing diagnostics for nodes

* Refactor TreeAnalyzer
2017-09-28 12:53:12 -07:00
John Nguyen a4739430f8 Fix memory leak issue (#459)
Closes #425
2017-08-21 22:43:17 -07:00
Ivan Bozhanov 35f33c8c91 Fluent interfaces support (#421) 2017-07-07 13:18:19 +02:00
Felix Becker fc0bf4c163 Fix workspace/xreferences (#424)
* Make Descriptors minimal

SymbolDescriptor and PackageDescriptor should only contain the minumum amount of properties needed

* Add missing use

* Fixes

* Ignore ReferenceInformation->symbol
2017-06-22 20:06:10 +02:00
Felix Becker fced1d5af6 Fix textDocument/xdefinition (#429) 2017-06-22 17:34:28 +02:00
Felix Becker 00552120ad Restrict workspace/symbol results to non-dependency symbols (#426)
This improves performance a lot and matches what other language servers do
2017-06-21 14:17:36 +02:00
Ivan Bozhanov dae3f2576c Add $this completion (#419) 2017-06-19 12:23:43 +02:00
Felix Becker a772d9a2d7 Remove content (#413) 2017-06-16 20:31:29 +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
Nicholas Narsing 8d1732ed02 Exclude directory paths from file system search (#401)
* Exclude directories from file system search

Directories can also match the glob search pattern if their names end in ".php", which will cause a read error later since the ContentRetriever implementers are expecting files. As far as I know, the only way to fix this is to do an additional check to ensure the URI is not of a directory.

This resolves #306.
2017-06-11 23:24:17 +02:00
Felix Becker fe7e9d5800 Rename $stmts to $sourceFileNode everywhere
The root node is now a SourceFileNode, not an array
2017-06-10 21:36:16 +02:00
Jens Hausdorf 4c1d7bd1bc Add true, false, null to keywords (#396) 2017-06-10 18:47:19 +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
Jens Hausdorf de6aed608c Show constructors and destructors with right symbol (#346) 2017-04-09 19:44:28 +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