ConcurrentRestrictions

sbt.ConcurrentRestrictions
See theConcurrentRestrictions companion object

Describes restrictions on concurrent execution for a set of tasks.

Attributes

Companion
object
Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Type members

Types

type G

Internal state type used to describe a set of tasks.

Internal state type used to describe a set of tasks.

Attributes

Value members

Abstract methods

def add(g: G, a: TaskId[_]): G

Updates the description g to include a new task a.

Updates the description g to include a new task a.

Attributes

def empty: G

Representation of zero tasks.

Representation of zero tasks.

Attributes

def remove(g: G, a: TaskId[_]): G

Updates the description g to remove a previously added task a.

Updates the description g to remove a previously added task a.

Attributes

def valid(g: G): Boolean

Returns true if the tasks described by g are allowed to execute concurrently. The methods in this class must obey the following laws:

Returns true if the tasks described by g are allowed to execute concurrently. The methods in this class must obey the following laws:

  1. forall g: G, a: A; valid(g) => valid(remove(g,a)) 2. forall a: A; valid(add(empty, a)) 3. forall g: G, a: A; valid(g) <=> valid(remove(add(g, a), a)) 4. (implied by 1,2,3) valid(empty) 5. forall g: G, a: A, b: A; !valid(add(g,a)) => !valid(add(add(g,b), a))

Attributes