com.nicta.scoobi.impl.plan.comp

GraphNodes

trait GraphNodes extends AttributionCore

generic functions for a nodes graph

Linear Supertypes
AttributionCore, Memoiser, AttributionCommon, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. GraphNodes
  2. AttributionCore
  3. Memoiser
  4. AttributionCommon
  5. AnyRef
  6. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. class CachedAttribute[T, U] extends Attribute[T, U] with org.kiama.attribution.AttributionCore.IdMemoised[T, Option[U]]

    Definition Classes
    AttributionCore
  2. class CachedDynamicAttribute[T, U] extends CachedAttribute[T, U]

    Definition Classes
    AttributionCore
  3. class CachedParamAttribute[A, T, U] extends (A) ⇒ Attribute[T, U] with org.kiama.attribution.AttributionCore.Memoised[ParamAttributeKey, Option[U]]

    Definition Classes
    AttributionCore
  4. class CircularAttribute[T, U] extends Attribute[T, U] with org.kiama.attribution.AttributionCore.IdMemoised[T, U]

    Definition Classes
    AttributionCore
  5. class ConstantAttribute[T, U] extends Attribute[T, U]

    Definition Classes
    AttributionCommon
  6. trait IdMemoised[T, U] extends MemoisedBase[T, U]

    Definition Classes
    Memoiser
  7. trait Memoised[T, U] extends MemoisedBase[T, U]

    Definition Classes
    Memoiser
  8. trait MemoisedBase[T, U] extends AnyRef

    Definition Classes
    Memoiser
  9. abstract type T <: Attributable

Value Members

  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
  4. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  5. def attr[T, U](name: String, f: (T) ⇒ U): CachedAttribute[T, U]

    Definition Classes
    AttributionCore
  6. macro def attr[T, U](f: (T) ⇒ U): CachedAttribute[T, U]

    Definition Classes
    AttributionCore
  7. def childAttr[T <: Attributable, U](name: String, f: (T) ⇒ (Attributable) ⇒ U): CachedAttribute[T, U]

    Definition Classes
    AttributionCore
  8. macro def childAttr[T <: Attributable, U](f: (T) ⇒ (Attributable) ⇒ U): CachedAttribute[T, U]

    Definition Classes
    AttributionCore
  9. lazy val children: CachedAttribute[T, Seq[T]]

    compute the children of a node.

    compute the children of a node.

    This is similar to calling the initTree method on the node but this stores the information as an attribute instead of storing it as a tree. This is a way to avoid conflicts if we have 2 processes trying to initialise the same graph

  10. def circular[T, U](name: String, init: U)(f: (T) ⇒ U): CircularAttribute[T, U]

    Definition Classes
    AttributionCore
  11. macro def circular[T, U](init: U)(f: (T) ⇒ U): CircularAttribute[T, U]

    Definition Classes
    AttributionCore
  12. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  13. def constant[T, U](name: String, u: ⇒ U): Attribute[T, U]

    Definition Classes
    AttributionCommon
  14. macro def constant[T, U](u: ⇒ U): Attribute[T, U]

    Definition Classes
    AttributionCommon
  15. lazy val descendents: CachedAttribute[T, Seq[T]]

    compute all the descendents of a node They are all the recursive children reachable from this node

  16. lazy val descendentsUntil: CachedParamAttribute[(T) ⇒ Boolean, T, Seq[T]]

  17. def dynAttr[T, U](name: String, f: (T) ⇒ U): CachedDynamicAttribute[T, U]

    Definition Classes
    AttributionCore
  18. macro def dynAttr[T, U](f: (T) ⇒ U): CachedDynamicAttribute[T, U]

    Definition Classes
    AttributionCore
  19. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  20. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  21. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  22. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  23. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  24. def initAttributable[S <: T](s: S): S

    initialise the parent/child relationship recursively from node s

  25. def initTree[T <: Attributable](t: T): Unit

    Definition Classes
    AttributionCommon
  26. implicit def internalToDynamicAttribute[T, U](f: (T) ⇒ U): CachedDynamicAttribute[T, U]

    Definition Classes
    AttributionCore
  27. lazy val isCyclic: CachedAttribute[T, Boolean]

    return true if a CompNode has a cycle in its graph, this will be detected by Kiama throwing an exception when fetching the descendents of a node

  28. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  29. lazy val isUsedAtMostOnce: CachedAttribute[T, Boolean]

    true if a node is used at most once

  30. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  31. final def notify(): Unit

    Definition Classes
    AnyRef
  32. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  33. def paramAttr[V, T, U](name: String, f: (V) ⇒ (T) ⇒ U): CachedParamAttribute[V, T, U]

    Definition Classes
    AttributionCore
  34. macro def paramAttr[V, T, U](f: (V) ⇒ (T) ⇒ U): CachedParamAttribute[V, T, U]

    Definition Classes
    AttributionCore
  35. lazy val parent: CachedAttribute[T, Option[T]]

    compute the parent of a node.

    compute the parent of a node. This relationship is actually maintained while getting the children of a node if the parent node has not been set while recursing for children, then it is None

  36. lazy val parents: CachedAttribute[T, Seq[T]]

    compute the parents of a node, that is all the chain of parents from this node up to the root of the graph

  37. def reinit[S <: T](s: S): S

    reinitialise all the attributes related to a node, starting from all the parent/children relationships

    reinitialise all the attributes related to a node, starting from all the parent/children relationships

    reset the attributes, then recreate the parent/children relationships recursively

  38. def resetMemo(): Unit

    Definition Classes
    Memoiser
  39. def resetUses: Unit

    reinit usages

    reinit usages

    Attributes
    protected
  40. lazy val root: CachedAttribute[T, T]

    the root of the graph, computed from a given node

  41. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  42. def toString(): String

    Definition Classes
    AnyRef → Any
  43. lazy val transitiveUses: CachedAttribute[T, Set[T]]

    compute all the indirect uses of a given node, that is all the nodes which have this node as a descendent

  44. def tree[T <: Attributable, U <: Attributable](name: String, f: (T) ⇒ U): CachedAttribute[T, U]

    Definition Classes
    AttributionCore
  45. macro def tree[T <: Attributable, U <: Attributable](f: (T) ⇒ U): CachedAttribute[T, U]

    Definition Classes
    AttributionCore
  46. lazy val uses: CachedAttribute[T, Set[T]]

    the nodes which have this node as a direct child

    the nodes which have this node as a direct child

    for efficiency, this uses a table of all the nodes using a given one, computed from the root

  47. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  48. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  49. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AttributionCore

Inherited from Memoiser

Inherited from AttributionCommon

Inherited from AnyRef

Inherited from Any

Ungrouped