Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Signature Help for function applications #10518

Merged
merged 38 commits into from
Dec 9, 2020

Conversation

cartermp
Copy link
Contributor

@cartermp cartermp commented Nov 21, 2020

fixes #10302

sig-help-2

Working checklist:

  • Tests
  • Bail out when all args are applied via a pipeline (e.g. x |> id)
  • Adjust layout of tooltip when doing a pipeline
  • Support pipelines (e.g., [1..10] |> List.map |)
  • Support triggering inside function calls (e.g., f (g a b) 2)
  • Don't trigger on functions that are passed as params
  • Qualified applications (e.g., M.f x)
  • Support continued typing in methods
  • Try to support continued typing of identifiers in function applications
  • Ensure space can still be used inside tupled argument calls
  • Support curried F#-defined methods
  • Match up parameters correctly (e.g., 2nd param in 3-parameter function application)

@cartermp cartermp force-pushed the sighelp-func-application branch from 713ddd6 to 5ece682 Compare November 23, 2020 20:05
Copy link
Contributor Author

@cartermp cartermp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeet

@cartermp cartermp added this to the 16.9 milestone Nov 25, 2020
@cartermp cartermp changed the title [WIP] Signature Help for function applications Signature Help for function applications Dec 1, 2020
@cartermp
Copy link
Contributor Author

cartermp commented Dec 2, 2020

Alright, this is ready for review subject to tests passing.

Copy link
Contributor

@TIHan TIHan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tests are amazing. Based on them, I feel confident with feature.

@cartermp cartermp merged commit dce8537 into dotnet:main Dec 9, 2020
nosami pushed a commit to xamarin/visualfsharp that referenced this pull request Feb 23, 2021
* Initial signature help support

* begin refactor

* more refactor, more use layout

* test project update

* Initial signature help support

* begin refactor

* more refactor, more use layout

* test project update

* fix tests

* fix the damn merge

* I hate git

* surface and retrigger unecessary

* Fix regression in typing identifiers for tupled calls

* Refactor + support old behavior in methods

* Support curried members

* Fix test

* Notes and refactor

* Calculate argument indexes correctly

* Support qualified applications and exclude operators

* dive into func expr correctly now that we pick the end of the func range

* uncomment out operator check

* Add back weird test thing

* handle pipelines and functions passed first-class

* todo - pipelines

* Finally, pipelines that work right!

* Support triggering in the middle of files

* clarifying comment

* Don't dive into arg expressions on infix apps unless they contain the range

* Move syntax tree stuff into service layer

* Add tests

* more tests

* Update area

* Finish tests for service layer

* refactor

* More integration tests

* fix merge issue
nosami pushed a commit to xamarin/visualfsharp that referenced this pull request Jan 26, 2022
* Initial signature help support

* begin refactor

* more refactor, more use layout

* test project update

* Initial signature help support

* begin refactor

* more refactor, more use layout

* test project update

* fix tests

* fix the damn merge

* I hate git

* surface and retrigger unecessary

* Fix regression in typing identifiers for tupled calls

* Refactor + support old behavior in methods

* Support curried members

* Fix test

* Notes and refactor

* Calculate argument indexes correctly

* Support qualified applications and exclude operators

* dive into func expr correctly now that we pick the end of the func range

* uncomment out operator check

* Add back weird test thing

* handle pipelines and functions passed first-class

* todo - pipelines

* Finally, pipelines that work right!

* Support triggering in the middle of files

* clarifying comment

* Don't dive into arg expressions on infix apps unless they contain the range

* Move syntax tree stuff into service layer

* Add tests

* more tests

* Update area

* Finish tests for service layer

* refactor

* More integration tests

* fix merge issue
nosami pushed a commit to xamarin/visualfsharp that referenced this pull request Jan 26, 2022
* Initial signature help support

* begin refactor

* more refactor, more use layout

* test project update

* Initial signature help support

* begin refactor

* more refactor, more use layout

* test project update

* fix tests

* fix the damn merge

* I hate git

* surface and retrigger unecessary

* Fix regression in typing identifiers for tupled calls

* Refactor + support old behavior in methods

* Support curried members

* Fix test

* Notes and refactor

* Calculate argument indexes correctly

* Support qualified applications and exclude operators

* dive into func expr correctly now that we pick the end of the func range

* uncomment out operator check

* Add back weird test thing

* handle pipelines and functions passed first-class

* todo - pipelines

* Finally, pipelines that work right!

* Support triggering in the middle of files

* clarifying comment

* Don't dive into arg expressions on infix apps unless they contain the range

* Move syntax tree stuff into service layer

* Add tests

* more tests

* Update area

* Finish tests for service layer

* refactor

* More integration tests

* fix merge issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Show parameter info not works for F# functions
3 participants