class SteensgaardAnalysis extends DepthFirstAstVisitor[Unit] with PointsToAnalysis
Steensgaard-style pointer analysis. The analysis associates an StTerm with each variable declaration and expression node in the AST. It is implemented using tip.solvers.UnionFindSolver.
- Alphabetic
 - By Inheritance
 
- SteensgaardAnalysis
 - PointsToAnalysis
 - Analysis
 - DepthFirstAstVisitor
 - AnyRef
 - Any
 
- Hide All
 - Show All
 
- Public
 - All
 
Instance Constructors
-  new SteensgaardAnalysis(program: AProgram)(implicit declData: DeclarationData)
 
Value Members
- 
      
      
      
        
      
    
      
        final 
        def
      
      
        !=(arg0: Any): Boolean
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        ##(): Int
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        ==(arg0: Any): Boolean
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        analyze(): Unit
      
      
      
Performs the analysis and returns the result.
Performs the analysis and returns the result.
- Definition Classes
 - SteensgaardAnalysis → Analysis
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        asInstanceOf[T0]: T0
      
      
      
- Definition Classes
 - Any
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        clone(): AnyRef
      
      
      
- Attributes
 - protected[lang]
 - Definition Classes
 - AnyRef
 - Annotations
 - @throws( ... ) @native() @IntrinsicCandidate()
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        eq(arg0: AnyRef): Boolean
      
      
      
- Definition Classes
 - AnyRef
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        equals(arg0: Any): Boolean
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        getClass(): Class[_]
      
      
      
- Definition Classes
 - AnyRef → Any
 - Annotations
 - @native() @IntrinsicCandidate()
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        hashCode(): Int
      
      
      
- Definition Classes
 - AnyRef → Any
 - Annotations
 - @native() @IntrinsicCandidate()
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        isInstanceOf[T0]: Boolean
      
      
      
- Definition Classes
 - Any
 
 -  val log: Logger
 - 
      
      
      
        
      
    
      
        
        def
      
      
        mayAlias(): (ADeclaration, ADeclaration) ⇒ Boolean
      
      
      
Returns a function that tells whether two given identifiers may point to the same cell.
Returns a function that tells whether two given identifiers may point to the same cell.
- returns
 a function that returns true if the identifiers may point to the same cell; false if they definitely do not point to the same cell
- Definition Classes
 - SteensgaardAnalysis → PointsToAnalysis
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        ne(arg0: AnyRef): Boolean
      
      
      
- Definition Classes
 - AnyRef
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        notify(): Unit
      
      
      
- Definition Classes
 - AnyRef
 - Annotations
 - @native() @IntrinsicCandidate()
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        notifyAll(): Unit
      
      
      
- Definition Classes
 - AnyRef
 - Annotations
 - @native() @IntrinsicCandidate()
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        pointsTo(): Map[ADeclaration, Set[AstNode]]
      
      
      
Builds the points-to map.
Builds the points-to map. For each identifier, the points-to map gives the set of cells the identifier may point to.
- Definition Classes
 - SteensgaardAnalysis → PointsToAnalysis
 
 -  val solver: UnionFindSolver[StTerm]
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        synchronized[T0](arg0: ⇒ T0): T0
      
      
      
- Definition Classes
 - AnyRef
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        toString(): String
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        visit(node: AstNode, arg: Unit): Unit
      
      
      
Generates the constraints for the given sub-AST.
Generates the constraints for the given sub-AST.
- node
 the node for which it generates the constraints
- arg
 unused for this visitor
- Definition Classes
 - SteensgaardAnalysis → DepthFirstAstVisitor
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        visitChildren(node: AstNode, arg: Unit): Unit
      
      
      
Recursively perform the visit to the sub-node of the passed node, passing the provided argument.
Recursively perform the visit to the sub-node of the passed node, passing the provided argument.
- node
 the node whose children need to be visited
- arg
 the argument to be passed to all sub-nodes
- Definition Classes
 - DepthFirstAstVisitor
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        wait(arg0: Long, arg1: Int): Unit
      
      
      
- Definition Classes
 - AnyRef
 - Annotations
 - @throws( ... )
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        wait(arg0: Long): Unit
      
      
      
- Definition Classes
 - AnyRef
 - Annotations
 - @throws( ... ) @native()
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        wait(): Unit
      
      
      
- Definition Classes
 - AnyRef
 - Annotations
 - @throws( ... )
 
 
Deprecated Value Members
- 
      
      
      
        
      
    
      
        
        def
      
      
        finalize(): Unit
      
      
      
- Attributes
 - protected[lang]
 - Definition Classes
 - AnyRef
 - Annotations
 - @throws( classOf[java.lang.Throwable] ) @Deprecated
 - Deprecated