# Package org.eclipse.handly.buffer

Provides a basic framework for implementing and manipulating text buffers.

- Interface Summary
  Interface | Description
  --- | ---
  IBuffer | Represents a potentially shared buffer that contains text contents of a resource.
  IBufferChange | Describes a text change to be applied to an `IBuffer`.
  IBufferListener | Interface for listeners to buffer state changes.
  ICoreTextFileBufferProvider | An object capable of providing `ITextFileBuffer` for an underlying file.

- Class Summary
  Class | Description
  --- | ---
  Buffer | A simple `IBuffer` implementation.
  BufferChange | Default implementation of `IBufferChange`.
  BufferChangeOperation | Applies a given change to a given `IBuffer`.
  BufferChangeOperation.UndoChange |
  ChildBuffer | A child buffer is created on top of a parent `IBuffer` and inherits the parent's contents initially, but is modified independently.
  TextFileBuffer | Implementation of `IBuffer` backed by an `ITextFileBuffer`.
  UiBufferChangeRunner | Executes a `BufferChangeOperation` in the UI thread.

- Enum Summary
  Enum | Description
  --- | ---
  SaveMode | Indicates whether a buffer is to be saved after a change has been applied to it.