final object Scopes

Constructors

Members

final object EmptyScope

The empty scope (immutable).

The empty scope (immutable).

class ErrorScope

A class for error scopes (mutable)

A class for error scopes (mutable)

[+] class MutableScope

A subclass of Scope that defines methods for entering and unlinking entries. Note: constructor is protected to force everyone to use the factory methods...

A subclass of Scope that defines methods for entering and unlinking entries. Note: constructor is protected to force everyone to use the factory methods newScope or newNestedScope instead. This is necessary because when run from reflection every scope needs to have a SynchronizedScope as mixin.

[+] final object MutableScope

A subclass of Scope that defines methods for entering and unlinking entries. Note: constructor is protected to force everyone to use the factory methods...

A subclass of Scope that defines methods for entering and unlinking entries. Note: constructor is protected to force everyone to use the factory methods newScope or newNestedScope instead. This is necessary because when run from reflection every scope needs to have a SynchronizedScope as mixin.

[+] abstract class Scope

A scope contains a set of symbols. It can be an extension of some outer scope, from which it inherits all symbols. This class does not have any methods...

A scope contains a set of symbols. It can be an extension of some outer scope, from which it inherits all symbols. This class does not have any methods to add symbols to a scope or to delete them. These methods are provided by subclass MutableScope.

class ScopeEntry
private final val FillFactor : 0.6666666666666666

Maximal fill factor of hash table

Maximal fill factor of hash table

private final val MaxRecursions : 1000

The maximal permissible number of recursions when creating a hashtable

The maximal permissible number of recursions when creating a hashtable

final val MinHashedScopeSize : 8
val selectAll : SymDenotation => Boolean
val selectNonPrivate : SymDenotation => Boolean
val selectPrivate : SymDenotation => Boolean
def newNestedScope ( outer: Scope ) ( implicit ctx: Context ) : MutableScope

Create a new scope nested in another one with which it shares its elements

Create a new scope nested in another one with which it shares its elements

def newScope : MutableScope

Create a new scope

Create a new scope

def newScopeWith ( elems: [ Symbol ] ) ( implicit ctx: Context ) : MutableScope

Create a new scope with given initial elements

Create a new scope with given initial elements

def scopeTransform ( owner: Symbol ) ( op: => MutableScope ) : MutableScope

Transform scope of members of owner using operation op This is overridden by the reflective compiler to avoid creating new scopes for packages

Transform scope of members of owner using operation op This is overridden by the reflective compiler to avoid creating new scopes for packages