[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [cdt-dev] Codan launch modes
|
Hi!
I don’t remember exactly how this works, but here is an example from ProblemBindingChecker.java:
@Override
public void initPreferences(IProblemWorkingCopy problem) {
super.initPreferences(problem);
// This checker should not run on full or incremental build
getLaunchModePreference(problem).enableInLaunchModes(CheckerLaunchMode.RUN_AS_YOU_TYPE,
CheckerLaunchMode.RUN_ON_DEMAND);
}
Maybe you could give this a try?
Marc-André
> On Mar 17, 2019, at 10:04 AM, Aubin Mahé <aubin.mahe@xxxxxxxxxx> wrote:
>
> Hello,
>
> I've created a checker plug-in based on CodAn and try to set up launch modes.
>
> Checker inherits org.eclipse.cdt.codan.core.cxx.model.AbstractIndexAstChecker and overrides initPreferences because I haven't found any extension point dedicated to this usage.
>
> @Override
> public void initPreferences( IProblemWorkingCopy problem ) {
> final LaunchModeProblemPreference lmpp =
> getLaunchModePreference( problem );
> lmpp.addLaunchMode( CheckerLaunchMode.RUN_ON_FULL_BUILD,
> Boolean.FALSE );
> lmpp.addLaunchMode( CheckerLaunchMode.RUN_ON_INC_BUILD ,
> Boolean.FALSE );
> lmpp.addLaunchMode( CheckerLaunchMode.RUN_ON_DEMAND ,
> Boolean.TRUE );
> lmpp.addLaunchMode( CheckerLaunchMode.RUN_ON_FILE_OPEN ,
> Boolean.FALSE );
> lmpp.addLaunchMode( CheckerLaunchMode.RUN_AS_YOU_TYPE ,
> Boolean.TRUE );
> lmpp.addLaunchMode( CheckerLaunchMode.RUN_ON_FILE_SAVE ,
> Boolean.FALSE );
> System.out.println( problem.getName() + ": "
> + problem.getPreference());
> }
>
> At runtime, console shows success of initialization:
>
> ...
> RAF-LNG-020: [org.eclipse.cdt.codan.core.param.FileScopeProblemPreference@4eddffcf, [(boolean)RUN_ON_FULL_BUILD=false, (boolean)RUN_ON_INC_BUILD=false, (boolean)RUN_ON_DEMAND=true, (boolean)RUN_ON_FILE_OPEN=false, (boolean)RUN_AS_YOU_TYPE=true, (boolean)RUN_ON_FILE_SAVE=false], (string)suppression_comment]
> RAF-LNG-030: [org.eclipse.cdt.codan.core.param.FileScopeProblemPreference@25264061, [(boolean)RUN_ON_FULL_BUILD=false, (boolean)RUN_ON_INC_BUILD=false, (boolean)RUN_ON_DEMAND=true, (boolean)RUN_ON_FILE_OPEN=false, (boolean)RUN_AS_YOU_TYPE=true, (boolean)RUN_ON_FILE_SAVE=false], (string)suppression_comment]
> ...
>
> First problem:
>
> Window -> Preferences -> C/C++ -> Code Analysis -> Customize Selected (button) -> Launching (tab) shows
>
> [X] Run as you type
> [ ] Run on file open
> [ ] Run as file save
> [X] Run on incremental build
> [X] Run on full build
> [X] Run on demand
>
> Second problem:
>
> When a file is opened my checker is called and report errors.
>
> How can I really tune launch modes?
> _______________________________________________
> cdt-dev mailing list
> cdt-dev@xxxxxxxxxxx
> To change your delivery options, retrieve your password, or unsubscribe from this list, visit
> https://www.eclipse.org/mailman/listinfo/cdt-dev