trait _Trait[A] extends Any.Collection[A] with Any.O

Observable Collection

Observable collection allows to track all the changes by subscribing for onChange event

Ordering
  1. Alphabetic
Inherited
  1. O
  2. Any.O
  3. Any.Collection
  4. scala.AnyRef
  5. scala.Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type

  1. abstract type scalqa.Any.Collection.O.Change[A] <: O.Change[A]
    Attributes
    protected
    Definition Classes
    _Trait

Method

  1. abstract def all: ~[A]

    Returns a Stream of all elements

    Returns a Stream of all elements

    Unless specifically defined, the order must be assumed as random.

    val coll = Any.Collection.make(1,3,5,7)
    coll.all.lp
    
    // Output
    ~(1, 3, 5, 7)
    Definition Classes
    _Trait
  2. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  3. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  4. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  5. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  7. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  8. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  9. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  10. final def notify(): Unit
    Definition Classes
    AnyRef
  11. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  12. abstract def size: Int

    Number of elements

    Number of elements

    Readily available, not calculated element count

    Idx.*(1,3,5,7).size.lp  // Prints: 4
    Definition Classes
    _Trait
  13. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  14. def toString(): String
    Definition Classes
    AnyRef → Any
  15. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  16. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  17. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Operator

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any

Event

  1. abstract def onChange(f: (Idx[scalqa.Any.Collection.O.Change[A]]) ⇒ Any): EventControl

    Change Event

    Change Event

    Subscribes listener to be notified of all changes

    val c = Any.Collection.OM.make[Int]
    
    c.onChange(_.all tp "Event: ")
    
    c add 99
    c +~= 0 <> 5
    c =-~ 3 <> 5
    
    c.all.lp
    
    // Output
    Event: ---- ----
           name item
           ---- ----
           Add  99
           ---- ----
    Event: ---- ----
           name item
           ---- ----
           Add  0
           Add  1
           Add  2
           Add  3
           Add  4
           Add  5
           ---- ----
    Event: ------ ----
           name   item
           ------ ----
           Remove 3
           Remove 4
           Remove 5
           ------ ----
    ~(2, 1, 0, 99)
    Definition Classes
    _Trait
  2. def onObservableChange(f: () ⇒ Any): EventControl

    On change event

    On change event

    This is the most general event indicating a change

    Usually an object will have other more usable events, but they will also trigger this one

    The method is protected in order not to pollute application name space

    This event will likely be used by GUI controls, which will call it through the 'library'

    Attributes
    protected
    Definition Classes
    _Trait_Trait