t

com.cra.figaro.library.collection

IncrementalProcess

trait IncrementalProcess[Index, Value] extends Process[Index, Value]

A process in which you can incrementally get the elements at a set of indices, while producing a new process. The new process should take into account any dependencies with elements that have already been generated.

Linear Supertypes
Process[Index, Value], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. IncrementalProcess
  2. Process
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. case class IndexOutOfRangeException (index: Index) extends RuntimeException with Product with Serializable

    Thrown if the index does not have an element.

    Thrown if the index does not have an element.

    Definition Classes
    Process

Abstract Value Members

  1. abstract def generate(index: Index): Element[Value]

    Produce the element corresponding to the value of the process at the given index.

    Produce the element corresponding to the value of the process at the given index. This method can assume that the indices has already been range checked.

    Definition Classes
    Process
  2. abstract def generate(indices: List[Index]): Map[Index, Element[Value]]

    Produce the elements representing the value of the process at the given indices.

    Produce the elements representing the value of the process at the given indices. Ensures that any dependencies between the elements are represented. This method must be implemented by implementations of Process. The return value maps each provided index to the corresponding element. This method can assume that the indices has already been range checked.

    Definition Classes
    Process
  3. abstract def generateIncremental(indices: List[Index]): (Map[Index, Element[Value]], Process[Index, Value])

    Produce the elements representing the value of the process at the given indices.

    Produce the elements representing the value of the process at the given indices. Ensures that any dependencies between the elements are represented. Also return a new container such that when elements for future indices are produced, any dependencies between those elements and the ones for these indices are represented.

    The first return value maps each provided index to the corresponding element. The second return values is the new container.

    This method does not assume that the indices have already been range checked.

    Attributes
    protected
  4. abstract def rangeCheck(index: Index): Boolean

    Check whether the given index has an element.

    Check whether the given index has an element.

    Definition Classes
    Process

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. def ++(that: Process[Index, Value]): Process[Index, Value]

    Returns a new process containing the elements of this process and the argument.

    Returns a new process containing the elements of this process and the argument. If an index is defined in both processes, the element of the argument is used.

    Definition Classes
    Process
  4. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  5. def apply(indices: Traversable[Index]): Map[Index, Element[Value]]

    Get the elements representing the value of the process at the given indices.

    Get the elements representing the value of the process at the given indices. Throws IndexOutOfRangeException if any index has no value.

    Definition Classes
    Process
  6. def apply(index: Index): Element[Value]

    Get an element representing the value of the process at the given index.

    Get an element representing the value of the process at the given index. Throws IndexOutOfRangeException if the index has no value.

    This apply method is cached, so calling process(index) always returns the same element.

    Definition Classes
    Process
  7. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  8. def chain[Value2](f: (Value) ⇒ Element[Value2]): Process[Index, Value2]

    Chain every value in this process through the given function, returning a new process.

    Chain every value in this process through the given function, returning a new process.

    Definition Classes
    Process
  9. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  10. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  11. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  12. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  13. def flatMap[Value2](f: (Value) ⇒ Element[Value2]): Process[Index, Value2]

    Chain every value in this process through the given function, returning a new process.

    Chain every value in this process through the given function, returning a new process.

    Definition Classes
    Process
  14. def get(indices: Traversable[Index]): Map[Index, Element[Option[Value]]]

    Safely get the elements over optional values at all of the indices.

    Safely get the elements over optional values at all of the indices. Any index that is not in range will always have value None. Dependencies between elements for indices in range will be produced.

    Definition Classes
    Process
  15. def get(index: Index): Element[Option[Value]]

    Safely get an element over an optional value at the index.

    Safely get an element over an optional value at the index. If the index is in range, the value of the element will be Some(something). If the index is out of range, the value of the element will be None.

    Definition Classes
    Process
  16. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  17. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  18. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  19. def map[Value2](f: (Value) ⇒ Value2): Process[Index, Value2]

    Apply the given function to every value in this process, returning a new process.

    Apply the given function to every value in this process, returning a new process.

    Definition Classes
    Process
  20. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  21. final def notify(): Unit
    Definition Classes
    AnyRef
  22. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  23. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  24. def toString(): String
    Definition Classes
    AnyRef → Any
  25. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Process[Index, Value]

Inherited from AnyRef

Inherited from Any

Ungrouped