Class ACBuilder

java.lang.Object
org.eclipse.core.internal.events.InternalBuilder
org.eclipse.core.resources.IncrementalProjectBuilder
org.eclipse.cdt.core.resources.ACBuilder
All Implemented Interfaces:
IMarkerGenerator, org.eclipse.core.runtime.IExecutableExtension

public abstract class ACBuilder extends org.eclipse.core.resources.IncrementalProjectBuilder implements IMarkerGenerator
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected static final boolean
     

    Fields inherited from class org.eclipse.core.resources.IncrementalProjectBuilder

    AUTO_BUILD, CLEAN_BUILD, FULL_BUILD, INCREMENTAL_BUILD

    Fields inherited from interface org.eclipse.cdt.core.IMarkerGenerator

    SEVERITY_ERROR_BUILD, SEVERITY_ERROR_RESOURCE, SEVERITY_INFO, SEVERITY_WARNING
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructor for ACBuilder
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addMarker(ProblemMarkerInfo problemMarkerInfo)
    Callback from Output Parser
    void
    addMarker(org.eclipse.core.resources.IResource file, int lineNumber, String errorDesc, int severity, String errorVar)
     
    static boolean
    Preference for building configurations only when there are resource changes within Eclipse or when there are changes in its references.
    protected void
    clean(org.eclipse.core.runtime.IProgressMonitor monitor)
     
    void
    Remove duplicate error markers that may have been created by addMarker(ProblemMarkerInfo) with the ProblemMarkerInfo.isDeferDeDuplication() flag set.
    protected org.eclipse.core.resources.IProject
    Returns the current project that this builder is running.
    org.eclipse.core.runtime.jobs.ISchedulingRule
    getRule(int trigger, Map args)
    Default ACBuilder shouldn't require locking the workspace during a CDT Project build.
    static boolean
     
    protected void
    printEvent(int kind, Map<String,String> args)
    For debugging purpose only.
    static void
    setAllConfigBuild(boolean enable)
     
    static void
    Preference for building configurations only when there are resource changes within Eclipse or when there are changes in its references.
    protected void
    setCurrentProject(org.eclipse.core.resources.IProject project)
    Set the current project that this builder is running.

    Methods inherited from class org.eclipse.core.resources.IncrementalProjectBuilder

    build, forgetLastBuiltState, getBuildConfig, getCommand, getContext, getDelta, getProject, hasBeenBuilt, isInterrupted, needRebuild, rememberLastBuiltState, requestProjectRebuild, requestProjectsRebuild, setInitializationData, startupOnInitialize

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • ACBuilder

      public ACBuilder()
      Constructor for ACBuilder
  • Method Details

    • setCurrentProject

      protected void setCurrentProject(org.eclipse.core.resources.IProject project)
      Set the current project that this builder is running.
      Since:
      5.11
    • getCurrentProject

      protected org.eclipse.core.resources.IProject getCurrentProject()
      Returns the current project that this builder is running.
      Returns:
      the project
      Since:
      5.11
    • addMarker

      public void addMarker(org.eclipse.core.resources.IResource file, int lineNumber, String errorDesc, int severity, String errorVar)
      Specified by:
      addMarker in interface IMarkerGenerator
    • deDuplicate

      public void deDuplicate()
      Remove duplicate error markers that may have been created by addMarker(ProblemMarkerInfo) with the ProblemMarkerInfo.isDeferDeDuplication() flag set. This method will also remove other duplicate ICModelMarker.C_MODEL_PROBLEM_MARKER markers on the resources referred to by ProblemMarkerInfo.
      Since:
      6.3
    • addMarker

      public void addMarker(ProblemMarkerInfo problemMarkerInfo)
      Callback from Output Parser
      Specified by:
      addMarker in interface IMarkerGenerator
    • needAllConfigBuild

      public static boolean needAllConfigBuild()
    • setAllConfigBuild

      public static void setAllConfigBuild(boolean enable)
    • buildConfigResourceChanges

      public static boolean buildConfigResourceChanges()
      Preference for building configurations only when there are resource changes within Eclipse or when there are changes in its references.
      Returns:
      true if configurations will be build when project resource changes within Eclipse false otherwise
      Since:
      5.1
    • setBuildConfigResourceChanges

      public static void setBuildConfigResourceChanges(boolean enable)
      Preference for building configurations only when there are resource changes within Eclipse or when there are changes in its references.
      Parameters:
      enable -
      Since:
      5.1
    • printEvent

      protected void printEvent(int kind, Map<String,String> args)
      For debugging purpose only. Prints events on the debug console.
      Since:
      5.2
    • clean

      protected void clean(org.eclipse.core.runtime.IProgressMonitor monitor) throws org.eclipse.core.runtime.CoreException
      Overrides:
      clean in class org.eclipse.core.resources.IncrementalProjectBuilder
      Throws:
      org.eclipse.core.runtime.CoreException
    • getRule

      public org.eclipse.core.runtime.jobs.ISchedulingRule getRule(int trigger, Map args)
      Default ACBuilder shouldn't require locking the workspace during a CDT Project build. Note this may have a detrimental effect on #getDelta(). Derived builders which rely on #getDelta(...) being accurate should return a WorkspaceRoot scheduling rule.
      Overrides:
      getRule in class org.eclipse.core.resources.IncrementalProjectBuilder
      Since:
      5.2