Package org.eclipse.handly.ui.text.reconciler

# Class WorkingCopyReconcilingStrategy

java.lang.Object
org.eclipse.handly.ui.text.reconciler.WorkingCopyReconcilingStrategy

All Implemented Interfaces:
  `org.eclipse.jface.text.reconciler.IReconcilingStrategy`, `org.eclipse.jface.text.reconciler.IReconcilingStrategyExtension`

public class WorkingCopyReconcilingStrategy extends Object implements org.eclipse.jface.text.reconciler.IReconcilingStrategy, org.eclipse.jface.text.reconciler.IReconcilingStrategyExtension
Reconciles a working copy.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `WorkingCopyReconcilingStrategy(Function<org.eclipse.jface.text.IDocument,ISourceFile> documentToSourceFile)`
  Creates a new working copy reconciling strategy with a function that is used to determine the source file for the reconciling strategy's document.
  `WorkingCopyReconcilingStrategy(IWorkingCopyManager workingCopyManager)`
  Creates a new working copy reconciling strategy with the given working copy manager.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `final void`
  `initialReconcile()`
  `protected void`
  `reconcile(ISourceFile sourceFile, boolean initialReconcile, org.eclipse.core.runtime.IProgressMonitor monitor)`
  Reconciles the given source file.
  `final void`
  `reconcile(org.eclipse.jface.text.IRegion partition)`
  `final void`
  `reconcile(org.eclipse.jface.text.reconciler.DirtyRegion dirtyRegion, org.eclipse.jface.text.IRegion subRegion)`
  `void`
  `setDocument(org.eclipse.jface.text.IDocument document)`
  `void`
  `setProgressMonitor(org.eclipse.core.runtime.IProgressMonitor monitor)`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### WorkingCopyReconcilingStrategy

    public WorkingCopyReconcilingStrategy(IWorkingCopyManager workingCopyManager)
    Creates a new working copy reconciling strategy with the given working copy manager. The working copy manager is used to determine the working copy for the reconciling strategy's document.
    Parameters:
      `workingCopyManager` - not `null`

  - ### WorkingCopyReconcilingStrategy

    public WorkingCopyReconcilingStrategy(Function<org.eclipse.jface.text.IDocument,ISourceFile> documentToSourceFile)
    Creates a new working copy reconciling strategy with a function that is used to determine the source file for the reconciling strategy's document.
    Parameters:
      `documentToSourceFile` - not `null`
    Since:
      1.5

- ## Method Details

  - ### setDocument

    public void setDocument(org.eclipse.jface.text.IDocument document)
    Specified by:
      `setDocument` in interface `org.eclipse.jface.text.reconciler.IReconcilingStrategy`

  - ### setProgressMonitor

    public void setProgressMonitor(org.eclipse.core.runtime.IProgressMonitor monitor)
    Specified by:
      `setProgressMonitor` in interface `org.eclipse.jface.text.reconciler.IReconcilingStrategyExtension`

  - ### initialReconcile

    public final void initialReconcile()

    This implementation delegates to `reconcile(ISourceFile, boolean, IProgressMonitor)`, passing the working copy for the reconciling strategy's document and indicating that this is the initial reconcile; any exceptions are logged and not rethrown.

    Specified by:
      `initialReconcile` in interface `org.eclipse.jface.text.reconciler.IReconcilingStrategyExtension`

  - ### reconcile

    public final void reconcile(org.eclipse.jface.text.reconciler.DirtyRegion dirtyRegion, org.eclipse.jface.text.IRegion subRegion)

    This implementation delegates to `reconcile(ISourceFile, boolean, IProgressMonitor)`, passing the working copy for the reconciling strategy's document; any exceptions are logged and not rethrown.

    Specified by:
      `reconcile` in interface `org.eclipse.jface.text.reconciler.IReconcilingStrategy`

  - ### reconcile

    public final void reconcile(org.eclipse.jface.text.IRegion partition)

    This implementation delegates to `reconcile(ISourceFile, boolean, IProgressMonitor)`, passing the working copy for the reconciling strategy's document; any exceptions are logged and not rethrown.

    Specified by:
      `reconcile` in interface `org.eclipse.jface.text.reconciler.IReconcilingStrategy`

  - ### reconcile

    protected void reconcile(ISourceFile sourceFile, boolean initialReconcile, org.eclipse.core.runtime.IProgressMonitor monitor) throws org.eclipse.core.runtime.CoreException
    Reconciles the given source file. Does nothing if the source file is not in working copy mode or if its buffer has not been modified since the last time it was reconciled.

    This implementation invokes `Elements.`reconcile`(sourceFile, monitor)`.

    Parameters:
      `sourceFile` - never `null`
      `initialReconcile` - `true` if this is the initial reconcile, and `false` otherwise
      `monitor` - a progress monitor, or `null` if progress reporting is not desired. The caller must not rely on `IProgressMonitor.done()` having been called by the receiver
    Throws:
      `org.eclipse.core.runtime.CoreException` - if the working copy could not be reconciled
      `org.eclipse.core.runtime.OperationCanceledException` - if this method is canceled