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

[workspace/symbol] Sort candidates with a fuzzy matching algorithm #182

Merged
merged 1 commit into from Dec 24, 2017

Conversation

Projects
None yet
2 participants
@MaskRay
Member

MaskRay commented Dec 24, 2017

No description provided.

@MaskRay MaskRay merged commit d95ae9b into cquery-project:master Dec 24, 2017

0 of 2 checks passed

continuous-integration/appveyor/pr Waiting for AppVeyor build to complete
Details
continuous-integration/travis-ci/pr The Travis CI build is in progress
Details

@MaskRay MaskRay deleted the MaskRay:workspace-symbol-fuzzy branch Dec 24, 2017

@MaskRay

This comment has been minimized.

Show comment
Hide comment
@MaskRay

MaskRay Dec 24, 2017

Member

We should use short_name for fuzzy matching and detailed_name for displaying results.

Currently detailed_name is used for both fuzzy matching and displaying results. A function type may be very long and a sub-sequence match (if (SubstringMatch(query_without_space, db->detailed_names[i])) {) produces too many bad candidates.

This sequence alignment dynamic programming algorithm is O(N*M) and thus I do not want to run it when there are too many candidates (if the number reaches the upper bound 200).

Member

MaskRay commented Dec 24, 2017

We should use short_name for fuzzy matching and detailed_name for displaying results.

Currently detailed_name is used for both fuzzy matching and displaying results. A function type may be very long and a sub-sequence match (if (SubstringMatch(query_without_space, db->detailed_names[i])) {) produces too many bad candidates.

This sequence alignment dynamic programming algorithm is O(N*M) and thus I do not want to run it when there are too many candidates (if the number reaches the upper bound 200).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment