Commit Graph

7 Commits

Author SHA1 Message Date
Hamish Knight
d7fc22aaca [IDE] Simplify isImplicitSingleExpressionReturn
Use the generalized implied result logic, and
rename to `isImpliedResult` since that's really
what we're querying here, and it needs to handle
implicit-last-exprs if enabled.
2024-02-07 18:14:23 +00:00
Alex Hoppen
72cadecf21 [CodeCompletion] Split result delivery into a result colleciton and consumer phase
This will allow us to run two different completion kinds and deliver results from both of them.

Also: Compute a unified type context for global lookup. Previously, we always used the expected type context of the last lookup. But really, we should be considering all possible types from all constraint system solutions when computing code completion results from the cache.
2023-08-24 15:41:36 -07:00
Alex Hoppen
c21a75def4 [CodeCompletion] Migrate CaseStmtBeginning to solver-based 2022-04-06 09:59:33 +02:00
Alex Hoppen
95d39842a9 [CodeCompletion] Don't record solution results twice in ExprCompletion
This fixes a performance problem where we were sometimes reporting >1000 solutions but all the relevant parameters of the result were equal.
2022-03-24 09:11:39 +01:00
Alex Hoppen
3597652960 [CodeCompletion] Make sawSolution non-final and override sawSolutionImpl from subclasses
This eliminates a source of bugs if subclasses of `TypeCheckCompletionCallback` forget to call the superclass’s implementation of `sawSolution` from their overridden method.
2022-03-21 23:41:26 +01:00
Alex Hoppen
51777d5ff7 [CodeCompletion] Move TypeCheckCompletionCallbacks to IDE 2022-03-21 20:04:32 +01:00
Alex Hoppen
e2a62f1a60 [CodeCompletion] Migrate expression completions to solver-based 2022-03-21 13:00:33 +01:00