Summarization

class Object
trait Matchable
class Any

Value members

Concrete methods

def analyze(expr: Tree)(implicit env: Env): Summary

Summarization of potentials and effects for an expression

Summarization of potentials and effects for an expression

Optimization:

  1. potentials for expression of primitive value types can be safely abandoned, as they are always fully initialized.
def analyze(tp: Type, source: Tree)(implicit env: Env): Summary
def analyzeConstructor(ctor: Symbol)(implicit env: Env): Summary

Summarize secondary constructors or class body

Summarize secondary constructors or class body

def analyzeField(sym: Symbol)(implicit env: Env): Summary
def analyzeMethod(sym: Symbol)(implicit env: Env): Summary
def classSummary(cls: ClassSymbol)(implicit env: Env): ClassSummary
def resolveThis(cls: ClassSymbol, pot: Potential, cur: ClassSymbol, source: Tree)(implicit env: Env): Summary