CCState

dotty.tools.dotc.cc.CCState
See theCCState companion class
object CCState

Attributes

Companion
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
CCState.type

Members list

Value members

Concrete methods

Should all LocalCap instances be treated as equal to GlobalAny?

Should all LocalCap instances be treated as equal to GlobalAny?

Attributes

Should uses not be recorded in markFree?

Should uses not be recorded in markFree?

Attributes

Is caps.any a root capability that is allowed to subsume other capabilities?

Is caps.any a root capability that is allowed to subsume other capabilities?

Attributes

inline def ifNotTried(c: Capability)(inline op: Boolean)(using Context): Boolean

Perform op unless operation has been tried on c before. This is needed to prevent infinite recursions in methods like tryInclude and accountsFor. The relation from capability to capability in its underling set can have cycles, for instance when capability objects are mutually dependent. We need to avoid going through such cycles more than once.

Perform op unless operation has been tried on c before. This is needed to prevent infinite recursions in methods like tryInclude and accountsFor. The relation from capability to capability in its underling set can have cycles, for instance when capability objects are mutually dependent. We need to avoid going through such cycles more than once.

Attributes

inline def inNewExistentialScope[T](mt: MethodType)(op: => T)(using Context): T

If we are currently in capture checking or setup, and mt is a method type that is not a prefix of a curried method, perform op assuming a fresh enclosing existential scope mt, otherwise perform op directly.

If we are currently in capture checking or setup, and mt is a method type that is not a prefix of a curried method, perform op assuming a fresh enclosing existential scope mt, otherwise perform op directly.

Attributes

The currently opened existential scopes

The currently opened existential scopes

Attributes

inline def withCollapsedLocalCaps[T](op: => T)(using Context): T

Run op under the assumption that all LocalCap instances are equal to each other and to GlobalAny. Needed to make override checking work for types containing LocalCaps. Asserted in override checking, tested in maxSubsumes. Is this sound? Test case is neg-custom-args/captures/leaked-curried.scala.

Run op under the assumption that all LocalCap instances are equal to each other and to GlobalAny. Needed to make override checking work for types containing LocalCaps. Asserted in override checking, tested in maxSubsumes. Is this sound? Test case is neg-custom-args/captures/leaked-curried.scala.

Attributes

inline def withDiscardedUses[T](op: => T)(using Context): T

Run op but suppress all recording of uses in markFree

Run op but suppress all recording of uses in markFree

Attributes

inline def withGlobalCapAsRoot[T](op: => T)(using Context): T

Run op under the assumption that caps.any can subsume all other capabilties except Result capabilities. Every use of this method should be scrutinized for whether it introduces an unsoundness hole.

Run op under the assumption that caps.any can subsume all other capabilties except Result capabilities. Every use of this method should be scrutinized for whether it introduces an unsoundness hole.

Attributes