The selection type, which is additionally checked for accessibility.
Assign type of RefinedType.
Refinements are typed as if they were members of refinement class
An abstraction of a class info, consisting of
- the intersection of its parents,
- refined by all non-private fields, methods, and type members,
- abstracted over all type parameters (into a type lambda)
- where all references to
this of the class are closed over in a RecType.
tpe is a named type, check that its denotation is accessible in the
current context. Return the type with those alternatives as denotations
which are accessible.
Also performs the following normalizations on the type
(1) parameter accessors are always dereferenced.
(2) if the owner of the denotation is a package object, it is assured
that the package object shows up as the prefix.
tree2's type is in the same universe as
tree1. If that's the case, return
op applied to both types.
If not, issue an error and return
The qualifying class of a this or super with prefix
qual (which might be empty).
A denotation exists really if it exists and does not point to a stale symbol.
Substitute argument type
argType for parameter
pref in type
skolemizing the argument type if it is not stable and
pref occurs in
Substitute types of all arguments
args for corresponding
The number of parameters
params may exceed the number of arguments.
In this case, only the common prefix is substituted.
The type of a selection with
name of a tree with type