Review Request 124601: Added look-ahead matching code completion
Kevin Funk
kfunk at kde.org
Mon Aug 3 11:09:22 UTC 2015
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/124601/#review83371
-----------------------------------------------------------
I'd need to try it to see whether the performance hit is noticable. In general I like and use the look-ahead feature *a lot*, it's super useful, it would be a bummer to lose it when migrating to kdev-clang.
While I can see (1) and (2) being fixed in in libclang (we've been working on (1) already), I don't see look-ahead completion being implemented in libclang in the near future (as long as we don't do), and it's likely controversial, too.
So, in general: +1 for the feature. And as I don't see it being implemented in libclang too soon, +1 to adding it to kdev-clang (off by default => no performance hit in the default case).
codecompletion/context.cpp (line 643)
<https://git.reviewboard.kde.org/r/124601/#comment57617>
typo: 'mathed'
codecompletion/context.cpp (line 903)
<https://git.reviewboard.kde.org/r/124601/#comment57618>
This is the actual expensive operation, so it makes sense to do this *only* if the completion setting is enabled.
- Kevin Funk
On Aug. 3, 2015, 10:02 a.m., Sergey Kalinichev wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/124601/
> -----------------------------------------------------------
>
> (Updated Aug. 3, 2015, 10:02 a.m.)
>
>
> Review request for KDevelop.
>
>
> Repository: kdev-clang
>
>
> Description
> -------
>
> Known shortcomings:
>
> 1)Auto type (and many other types) is not exposed through LibClang. So we assign DelayedType to it instead of IdentifiedType, therefore no declaration attached to the type, hence no look-ahead completion.
>
> 2)LibClang missing API to determine expected code completion type. To workaround it, now we use types of declarations from the best mathes group. Therefore if no declarations found with a high enough priority, no items will be added to the look-ahead completion group.
>
> As a result the look-ahead completion works only in the simpliest cases.
>
>
> Diffs
> -----
>
> clangsettings/clangsettingsmanager.h 0d6eec1
> clangsettings/clangsettingsmanager.cpp db125f3
> clangsettings/sessionsettings/sessionconfig.kcfg 63fb6c5
> clangsettings/sessionsettings/sessionsettings.ui 74a157f
> codecompletion/context.cpp 1d52021
> tests/test_codecompletion.cpp fca922d
>
> Diff: https://git.reviewboard.kde.org/r/124601/diff/
>
>
> Testing
> -------
>
>
> Thanks,
>
> Sergey Kalinichev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20150803/7b6e238b/attachment.html>
More information about the KDevelop-devel
mailing list