-
Notifications
You must be signed in to change notification settings - Fork 38
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
qualified-methods source #117
base: master
Are you sure you want to change the base?
Conversation
(interpose "\n") | ||
join)) | ||
(let [sort-members (fn [[^Class cl members]] | ||
[cl (sort-by #(.getParameterCount %) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This changes order of signatures from least arguments to most also for existing (static) members sources. This should help with picking the right annotations.
28c45f6
to
fe88399
Compare
Codecov ReportAttention:
❗ Your organization needs to install the Codecov GitHub app to enable full functionality. Additional details and impacted files@@ Coverage Diff @@
## master #117 +/- ##
==========================================
- Coverage 94.73% 93.79% -0.94%
==========================================
Files 12 12
Lines 854 886 +32
Branches 30 32 +2
==========================================
+ Hits 809 831 +22
- Misses 15 23 +8
- Partials 30 32 +2 ☔ View full report in Codecov by Sentry. |
82c10b0
to
398c3ba
Compare
Thank you for getting onto this! A couple of immediate comments.
|
Thanks for your feedback.
So it could be a patch that removes the
Makes sense!
👍 |
Yes, I think we can do that and bump the minor version of Compliment along. It will be a significant change after all. |
398c3ba
to
0d2c83a
Compare
This supports Clojure's 1.12 qualified methods and constructors. So not only should static methods and fields be completed but also constructors and instance methods via the same `Class/method` format, e.g. `Long/new`.
0d2c83a
to
0ed280b
Compare
Made the changes. Let me know if something's missing. |
cb388a2
to
d80e110
Compare
Hi @eval! Would you have the time to update this to the new change in 1.12 alpha? With static and non-static members being separated again, we can keep the current sources. The only thing that would change is that |
This PR is a draft and meant for input.
This adds a source
:compliment.sources.class-members/qualified-methods
that should aid completions for Clojure v1.12.Examples:
Questions/TBD:
That would need some changes to how
defsource
adds sources and then something like(compliment.core/completions "java.util.Date/" {:sources/include #{:other/source}})
?:compliment.sources.class-members/static-members
there will be duplicates.Not sure if this needs handling.
Not sure if/what else to add (constructors shown are all public).
Do: