Packages

object Dag

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Dag
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. class RecursiveCycle extends Exception

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 clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  6. def dagFor[T](dags: List[Dag[T]], targets: Set[T]): Option[List[Dag[T]]]

    Return a list of dags that match all the targets.

    Return a list of dags that match all the targets.

    The matched dags are returned in no particular order.

    dags

    The list of all dags.

    targets

    The targets for which we want to find a dag.

    returns

    An optional value of a list of dags.

  7. def dagFor[T](dags: List[Dag[T]], target: T): Option[Dag[T]]
  8. def dfs[T](dag: Dag[T]): List[T]
  9. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  10. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  11. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  12. def fromMap(projectsMap: Map[String, Project]): List[Dag[Project]]
  13. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  14. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  15. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  16. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  17. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  18. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  19. def reduce[T](dags: List[Dag[T]], targets: Set[T]): Set[T]

    Reduce takes a list of dags and a set of targets and outputs the smallest set of disjoint DAGs that include all the targets (transitively).

    Reduce takes a list of dags and a set of targets and outputs the smallest set of disjoint DAGs that include all the targets (transitively).

    Therefore, all the nodes in targets that have a children relationship with another node in targets will be subsumed by the latter and removed from the returned set of DAGs nodes.

    This operation is necessary to remove the repetition of a transitive action over the nodes in targets. This operation has not been tweaked for performance yet because it's unlikely we stumble upon densely populated DAGs (in the magnitude of hundreds) with tons of inter-dependencies in real-world module graphs.

    To make this operation more efficient, we may want to do indexing of transitives and then cache them in the build so that we don't have to recompute them every time.

    dags

    The forest of disjoint DAGs from which we start from.

    targets

    The targets to be deduplicated transitively.

    returns

    The smallest set of disjoint DAGs including all targets.

  20. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  21. def toDotGraph(dags: List[Dag[Project]]): String
  22. def toDotGraph[T](dag: Dag[T])(implicit Show: Show[T]): String
  23. def toString(): String
    Definition Classes
    AnyRef → Any
  24. def transitive[T](dag: Dag[T]): List[Dag[T]]
  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
    @native() @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped