Class CHACallGraph

  • All Implemented Interfaces:
    CallGraph

    public final class CHACallGraph
    extends BaseCallGraph
    A call graph constructed following the Class Hierarchy Analysis as defined in: Frank Tip and Jens Palsberg. 2000. Scalable propagation-based call graph construction algorithms. In Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications (OOPSLA '00). Association for Computing Machinery, New York, NY, USA, 281–293. DOI:https://doi.org/10.1145/353171.353190
    • Constructor Detail

      • CHACallGraph

        public CHACallGraph()
    • Method Detail

      • getPossibleTypesOfReceiver

        protected java.util.Collection<Type> getPossibleTypesOfReceiver​(Expression receiver)
        Description copied from class: BaseCallGraph
        Returns all the possible types of the given expression, that is a receiver of a method call. How we choose this set varies from the call graph algorithm we decide to adopt (e.g., CHA, RTA, 0-CFA, ...)
        Specified by:
        getPossibleTypesOfReceiver in class BaseCallGraph
        Parameters:
        receiver - an expression
        Returns:
        the possible types of the given expression