The (last) list of arguments of an application
Does this CaseDef catch everything of a certain Type?
Does this CaseDef catch Throwable?
The largest subset of {NoInits, PureInterface} that a trait enclosing this statement can have as flags.
The largest subset of {NoInits, PureInterface} that a trait enclosing this statement can have as flags. Does tree contain an initialization part when seen as a member of a class or trait?
The first constructor definition in stats
The arguments to the first constructor in stats
.
Checks whether predicate p
is true for all result parts of this expression,
where we zoom into Ifs, Matches, and Blocks.
Does this list contain a named argument tree?
Is this pattern node a catch-all (wildcard or variable) pattern?
Is this case guarded?
Is name a left-associative operator?
Is tpt a vararg type of the form T* or => T*?
Is tree a self constructor call this(...)? I.e.
Is tree a self constructor call this(...)? I.e. a call to a constructor of the same object?
Is tree a super constructor call?
Is this pattern node a synthetic catch-all case, added during PartialFuction synthesis before we know whether the user provided cases are exhaustive.
Is tree a variable pattern?
Is the argument a wildcard argument of the form _
or x @ _
?
Is this argument node of the form <expr> : _* ?
Does this argument list end with an argument of the form <expr> : _* ?
can this type be a type pattern?
The method part of an application node, possibly enclosed in a block with only valdefs as statements.
The method part of an application node, possibly enclosed in a block with only valdefs as statements. the reason for also considering blocks is that named arguments can transform a call into a block, e.g. <init>(b = foo, a = bar) is transformed to { val x$1 = foo val x$2 = bar <init>(x$2, x$1) }
The number of arguments in an application
If this is an application, its function part, stripping all Apply nodes (but leaving TypeApply nodes in).
If this is an application, its function part, stripping all Apply nodes (but leaving TypeApply nodes in). Otherwise the tree itself.
The underlying pattern ignoring any bindings