Attributes
- Companion
- class
- Graph
-
- Supertypes
- Self type
-
CaptureSet.type
Members list
Type members
Classlikes
A mapping where the type map is required to be a bijection. Parameters as in Mapped.
A mapping where the type map is required to be a bijection. Parameters as in Mapped.
Attributes
- Supertypes
-
class DerivedVarclass Varclass CaptureSettrait Showableclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
The subclass of constant capture sets with given elements elems
The subclass of constant capture sets with given elements elems
Attributes
- Supertypes
- Known subtypes
A variable that is derived from some other variable via a map or filter.
A variable with elements given at any time as { x <- source.elems | !other.accountsFor(x) }
A variable with elements given at any time as { x <- source.elems | !other.accountsFor(x) }
Attributes
- Supertypes
-
class Filteredclass DerivedVarclass Varclass CaptureSettrait Showableclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Constclass CaptureSettrait Showableclass Objecttrait Matchableclass AnyShow all
A value of this class is produced and added as a note to ccState when a subsumes check decides that an existential variable ex cannot be instantiated to the other capability other.
A value of this class is produced and added as a note to ccState when a subsumes check decides that an existential variable ex cannot be instantiated to the other capability other.
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait ErrorNoteclass Objecttrait Matchableclass AnyShow all
A variable with elements given at any time as { x <- source.elems | p(x) }
A variable with elements given at any time as { x <- source.elems | p(x) }
Attributes
- Supertypes
-
class DerivedVarclass Varclass CaptureSettrait Showableclass Objecttrait Matchableclass AnyShow all
- Known subtypes
-
class Diff
A special capture set that gets added to the types of symbols that were not themselves capture checked, in order to admit arbitrary corresponding capture sets in subcapturing comparisons. Similar to platform types for explicit nulls, this provides more lenient checking against compilation units that were not yet compiled with capture checking on.
A special capture set that gets added to the types of symbols that were not themselves capture checked, in order to admit arbitrary corresponding capture sets in subcapturing comparisons. Similar to platform types for explicit nulls, this provides more lenient checking against compilation units that were not yet compiled with capture checking on.
Attributes
- Supertypes
- Self type
-
Fluid.type
A capture set variable used to record the references hidden by a Fresh instance, The elems and deps members are repurposed as follows: elems: Set of hidden references deps : Set of hidden sets for which the Fresh instance owning this set is a hidden element. Hidden sets may become aliases of other hidden sets, which means that reads and writes of elems go to the alias. If H is an alias of R.hidden for some Fresh instance R then: H.elems == {R} H.deps = {R.hidden} This encoding was chosen because it relies only on the elems and deps fields which are already subject through snapshotting and rollbacks in VarState. It's advantageous if we don't need to deal with other pieces of state there.
A capture set variable used to record the references hidden by a Fresh instance, The elems and deps members are repurposed as follows: elems: Set of hidden references deps : Set of hidden sets for which the Fresh instance owning this set is a hidden element. Hidden sets may become aliases of other hidden sets, which means that reads and writes of elems go to the alias. If H is an alias of R.hidden for some Fresh instance R then: H.elems == {R} H.deps = {R.hidden} This encoding was chosen because it relies only on the elems and deps fields which are already subject through snapshotting and rollbacks in VarState. It's advantageous if we don't need to deal with other pieces of state there.
Attributes
- Supertypes
A TypeMap that is the identity on capabilities
A TypeMap that is the identity on capabilities
Attributes
- Supertypes
- Known subtypes
-
class SimplifyMapclass SimplifyKeepUnchecked
Attributes
- Supertypes
Failure indicating that a read-only capture set of a mutable type cannot be widened to an exclusive set.
Failure indicating that a read-only capture set of a mutable type cannot be widened to an exclusive set.
Value parameters
- cs
-
the exclusive set in question
- hi
-
the upper type of the orginal type comparison, or NoType if not known
- lo
-
the lower type of the orginal type comparison, or NoType if not known
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait ErrorNoteclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
trait Enumtrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Variables created in types of inferred type trees
Variables created in types of inferred type trees
Attributes
- Supertypes
Attributes
- Supertypes
The subclass of captureset variables with given initial elements
The subclass of captureset variables with given initial elements
Value parameters
- initialElems
-
the initial elements
- initialOwner
-
the initial owner. This is the real owner, except that it can be change in HiddenSets. Used for level checking if different from NoSymbol.
- nestedOK
-
relevant only if owner != NoSymbol. If true the set accepts elements that are directly owned by owner.
Attributes
- Supertypes
- Known subtypes
A VarState serves as a snapshot mechanism that can undo additions of elements or super sets if an operation fails
A VarState serves as a snapshot mechanism that can undo additions of elements or super sets if an operation fails
Attributes
- Companion
- object
- Supertypes
- Known subtypes
Types
Value members
Concrete methods
Apply f to each element in xs, and join result sets with ++
Apply f to each element in xs, and join result sets with ++
Attributes
Apply extrapolated tm to each element in xs, and join result sets with ++
Apply extrapolated tm to each element in xs, and join result sets with ++
Attributes
Extrapolate tm(r) according to variance. Let r1 be the result of tm(r).
Extrapolate tm(r) according to variance. Let r1 be the result of tm(r).
- If r1 is a tracked capability, return {r1}
- If r1 has an empty capture set, return {}
- Otherwise,
- if the variance is covariant, return r1's capture set
- if the variance is contravariant, return {}
- Otherwise assertion failure
Attributes
The capture set of the type underlying the capability c
The capture set of the type underlying the capability c
Attributes
Capture set of a type
Capture set of a type
Value parameters
- followResult
-
If true, also include capture sets of function results.
Attributes
The deep capture set of a type is the union of all covariant occurrences of capture sets. Nested existential sets are approximated with cap.
The deep capture set of a type is the union of all covariant occurrences of capture sets. Nested existential sets are approximated with cap.
Attributes
The shared capture set {cap.rd}
The shared capture set {cap.rd}
Attributes
Return true iff
Return true iff
- arg1 is a TypeBounds >: CL T <: CH T of two capturing types with equal parents.
- arg2 is a capturing type CA U
- CH <: CA <: CL In other words, we can unify CL, CH and CA.
Attributes
The universal capture set {cap}
The universal capture set {cap}
Attributes
The current VarState, as passed by the implicit context
The current VarState, as passed by the implicit context
Attributes
Perform op. Under -Ycc-debug, collect and print info about all variables reachable via (_.deps)* from the variables that were shown in op.
Perform op. Under -Ycc-debug, collect and print info about all variables reachable via (_.deps)* from the variables that were shown in op.
Attributes
Concrete fields
If true emit info when var with id debugTarget is created or gets a new element
If true emit info when var with id debugTarget is created or gets a new element