org.bitbucket.inkytonik.kiama.relation.Tree

TreeRelation

class TreeRelation[V, W] extends RelationLike[V, W, TreeRelation]

A tree relation is a binary relation on tree nodes with an extra property that the image operation throws a NodeNotInTreeException exception if it is applied to a node that is not in this tree.

Source
Tree.scala
Linear Supertypes
RelationLike[V, W, TreeRelation], AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. TreeRelation
  2. RelationLike
  3. AnyRef
  4. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new TreeRelation(graph: Vector[(V, W)])

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. def apply(t: V): Vector[W]

    Apply this relation (same as image).

    Apply this relation (same as image).

    Definition Classes
    RelationLike
  7. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  8. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  9. def collect[V, W](f: ==>[(V, W), (V, W)]): TreeRelation[V, W]

    Build a new relation by collecting pairs produced by the partial function f wherever it is defined on pairs of this relation.

    Build a new relation by collecting pairs produced by the partial function f wherever it is defined on pairs of this relation.

    Definition Classes
    RelationLike
  10. val companion: TreeRelationFactory.type

    A companion object that provides factory methods for this kind of relation.

    A companion object that provides factory methods for this kind of relation.

    Definition Classes
    TreeRelationRelationLike
  11. def compose[S](st: RelationLike[S, V, TreeRelation]): TreeRelation[S, W]

    Compose this relation with st.

    Compose this relation with st.

    Definition Classes
    RelationLike
  12. def containsInDomain(t: V): Boolean

    Does the domain of this relation contain the value t?

    Does the domain of this relation contain the value t?

    Definition Classes
    RelationLike
  13. def containsInRange(u: W): Boolean

    Does the range of this relation contain the value u?

    Does the range of this relation contain the value u?

    Definition Classes
    RelationLike
  14. lazy val domain: Vector[V]

    The domain of this relation.

    The domain of this relation.

    Definition Classes
    RelationLike
  15. final def eq(arg0: AnyRef): Boolean

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

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

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

    Definition Classes
    AnyRef → Any
  19. val graph: Vector[(V, W)]

    The graph of this relation.

    The graph of this relation.

    Definition Classes
    TreeRelationRelationLike
  20. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  21. def image(v: V): Vector[W]

    Return the image of a node in this tree.

    Return the image of a node in this tree. As for normal relations, except that it throws NodeNotInTreeException if the node is not actually in the tree on which this relation is defined.

    Definition Classes
    TreeRelationRelationLike
  22. lazy val index: TreeRelation[W, Int]

    A relation that maps each element of the range to its position (starting counting at zero).

    A relation that maps each element of the range to its position (starting counting at zero).

    Definition Classes
    RelationLike
  23. lazy val inverse: TreeRelation[W, V]

    Invert this relation.

    Invert this relation. In other words, if (t,u) is in the relation, then (u,t) is in the inverted relation.

    Definition Classes
    RelationLike
  24. lazy val isEmpty: Boolean

    Is this relation empty (i.

    Is this relation empty (i.e., contains no pairs)?

    Definition Classes
    RelationLike
  25. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  26. final def ne(arg0: AnyRef): Boolean

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

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

    Definition Classes
    AnyRef
  29. object pair

    An auxiliary extractor for this relation that matches pairs.

  30. def preImage(u: W): Vector[V]

    The preImage of a value of the relation's range is a set of the values in the domain that are related to that range value.

    The preImage of a value of the relation's range is a set of the values in the domain that are related to that range value.

    Definition Classes
    RelationLike
  31. lazy val preIndex: TreeRelation[V, Int]

    A relation that maps each element of the domain to its position starting at zero.

    A relation that maps each element of the domain to its position starting at zero.

    Definition Classes
    RelationLike
  32. lazy val projDomain: TreeRelation[V, Vector[W]]

    Domain projection, i.

    Domain projection, i.e., form a relation that relates each value in the domain to all of the related values in the range.

    Definition Classes
    RelationLike
  33. lazy val projRange: TreeRelation[W, Vector[V]]

    Range projection, i.

    Range projection, i.e., form a relation that relates each value in the range to all of the related values in the domain.

    Definition Classes
    RelationLike
  34. lazy val range: Vector[W]

    The range of this relation.

    The range of this relation.

    Definition Classes
    RelationLike
  35. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  36. def toString(): String

    Definition Classes
    AnyRef → Any
  37. def unapply(t: V): Option[W]

    A relation can be used as an extractor that matches if and only if the matched value t has a unique image in the relation.

    A relation can be used as an extractor that matches if and only if the matched value t has a unique image in the relation. The unique image value is returned for a successful match.

    Definition Classes
    RelationLike
  38. def unapplySeq(t: V): Option[Vector[W]]

    A relation can be used as an extractor that returns the image for a given domain value t.

    A relation can be used as an extractor that returns the image for a given domain value t. Fails if t is not in the domain.

    Definition Classes
    RelationLike
  39. def union(r: RelationLike[V, W, TreeRelation]): TreeRelation[V, W]

    Union this relation with r.

    Union this relation with r.

    Definition Classes
    RelationLike
  40. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  43. def withDomain(t: V): TreeRelation[V, W]

    Return the sub-relation of this relation that contains just those pairs that have t as their domain element.

    Return the sub-relation of this relation that contains just those pairs that have t as their domain element.

    Definition Classes
    RelationLike
  44. def withRange(u: W): TreeRelation[V, W]

    Return the sub-relation of this relation that contains just those pairs that have u as their range element.

    Return the sub-relation of this relation that contains just those pairs that have u as their range element.

    Definition Classes
    RelationLike

Inherited from RelationLike[V, W, TreeRelation]

Inherited from AnyRef

Inherited from Any

Ungrouped