Interface ScopeId

  • All Known Implementing Classes:
    UniqueScope

    public interface ScopeId
    An identifier for an InterproceduralAnalysis to distinguish different results for the same CFG based on their calling contexts.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      boolean isStartingId()
      Yields whether or not this id is the starting one, that is, if it has been generated with startingId() or if it must be considered equivalent to the value returned by that method.
      ScopeId push​(CFGCall c)
      Transforms the current scope id by appending the given call.
      ScopeId startingId()
      Yields the id to use at the start of the analysis, for entrypoints.
    • Method Detail

      • startingId

        ScopeId startingId()
        Yields the id to use at the start of the analysis, for entrypoints.
        Returns:
        the scope
      • isStartingId

        boolean isStartingId()
        Yields whether or not this id is the starting one, that is, if it has been generated with startingId() or if it must be considered equivalent to the value returned by that method.
        Returns:
        true if that condition holds
      • push

        ScopeId push​(CFGCall c)
        Transforms the current scope id by appending the given call.
        Parameters:
        c - the call to append
        Returns:
        the (optionally) updated id