scala.collection.mutable
trait ObservableBuffer

[source: `scala/collection/mutable/ObservableBuffer.scala`]

`` `trait` ObservableBuffer[A, This <: ObservableBuffer[A, This]]
  `extends` Buffer[A]`with` Publisher[Message[(Location, A)]`with` Undoable, This]

  This class is typically used as a mixin. It adds a subscription mechanism to the `Buffer` class into which this abstract class is mixed in. Class `ObservableBuffer` publishes events of the type `Message`.

Author
  Matthias Zenger
Version
  1.0, 08/07/2003

Method Summary
`def` | + (element : A) : Buffer[A] Append a single element to this buffer and return the identity of the buffer.
`def` | +: (element : A) : Buffer[A] Prepend a single element to this buffer and return the identity of the buffer.
`def` | clear : Unit Clears the buffer contents.
`def` | insertAll (n : Int, iter : Iterable[A]) : Unit Inserts new elements at the index `n`. Opposed to method `update`, this method will not replace an element with a one. Instead, it will insert a new element at index `n`.
`def` | remove (n : Int) : A Removes the element on a given index position.
`def` | update (n : Int, newelement : A) : Unit Replace element at index `n` with the new element `newelem`.

Methods inherited from Publisher
subscribe, subscribe, suspendSubscription, activateSubscription, removeSubscription, removeSubscriptions, publish

Methods inherited from Buffer
+= (abstract), readOnly (abstract), ++=, ++=, ++=, ++, ++, ++, ++:, -=, append, appendAll, prepend, prependAll, insert, trimStart, trimEnd, <<, clone, hashCode, stringPrefix

Methods inherited from Seq
length (abstract), lengthCompare, size, isEmpty, concat, last, lastOption, headOption, isDefinedAt, lastIndexOf, map, flatMap, filter, take, drop, slice, takeWhile, dropWhile, reverse, contains, subseq, toArray, projection, equalsWith, startsWith, endsWith, indexOf, containsSlice

Methods inherited from Collection
toString

Methods inherited from Iterable
elements (abstract), foreach, forall, exists, find, findIndexOf, indexOf, foldLeft, foldRight, /:, :\, reduceLeft, reduceRight, copyToBuffer, sameElements, toList, toStream, mkString, mkString, mkString, addString, addString, copyToArray, hasDefiniteSize

Methods inherited from PartialFunction
orElse, andThen

Methods inherited from Function1
apply (abstract), compose

Methods inherited from AnyRef
getClass, equals, notify, notifyAll, wait, wait, wait, finalize, ==, !=, eq, ne, synchronized

Methods inherited from Any
==, !=, isInstanceOf, asInstanceOf

Method Details

`` `def` +(element : A) : Buffer[A]

  Append a single element to this buffer and return the identity of the buffer.

Parameters
  `elem -` the element to append.

Overrides
  Buffer.+

`` `def` +:(element : A) : Buffer[A]

  Prepend a single element to this buffer and return the identity of the buffer.

Parameters
  `elem -` the element to append.

Overrides
  Buffer.+:

`` `def` insertAll(n : Int, iter : Iterable[A]) : Unit

  Inserts new elements at the index `n`. Opposed to method `update`, this method will not replace an element with a one. Instead, it will insert a new element at index `n`.

Parameters
  `n -` the index where a new element will be inserted.
  `iter -` the iterable object providing all elements to insert.

Overrides
  Buffer.insertAll

`` `def` update(n : Int, newelement : A) : Unit

  Replace element at index `n` with the new element `newelem`.

Parameters
  `n -` the index of the element to replace.
  `newelem -` the new element.

Overrides
  Buffer.update

`` `def` remove(n : Int) : A

  Removes the element on a given index position.

Parameters
  `n -` the index which refers to the element to delete.

Overrides
  Buffer.remove

`` `def` clear : Unit

  Clears the buffer contents.

Overrides
  Buffer.clear