SafeRefs

dotty.tools.dotc.cc.SafeRefs
object SafeRefs

Check whether references from safe mode should be allowed

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type
SafeRefs.type

Members list

Value members

Concrete methods

def checkSafe(tree: Tree, pt: Type)(using Context): Unit
def checkSafeAnnots(sym: Symbol)(using Context): Unit
def checkSafeAnnotsInType(tree: Tree)(using Context): Unit
def init()(using Context): Unit

Declare some classes and methods @assumeSafe or @rejectSafe. We can't (currently) put in annotations directly since some of these come from Java and others first need a bootstrapped compiler that updates Feature.ccException to allow experimental @assumeSafe and @rejectSafe. Once we have an updated ccException in the bootstrap compiler, we could add annotations to library classes manually, as long as these library classes are capture checked.

Declare some classes and methods @assumeSafe or @rejectSafe. We can't (currently) put in annotations directly since some of these come from Java and others first need a bootstrapped compiler that updates Feature.ccException to allow experimental @assumeSafe and @rejectSafe. Once we have an updated ccException in the bootstrap compiler, we could add annotations to library classes manually, as long as these library classes are capture checked.

Attributes

Concrete fields