Class CachedIRBuilder

java.lang.Object
pascal.taie.frontend.cache.CachedIRBuilder
All Implemented Interfaces:
Serializable, IRBuilder

public class CachedIRBuilder extends Object implements IRBuilder
The IRBuilder is for keeping the IRs of all methods to prevent cyclic references with too long a path which may make the serialization fail or StackOverflowError.
See Also:
  • Constructor Details

  • Method Details

    • buildIR

      public IR buildIR(JMethod method)
      This method will be called by JMethod.getIR() only once, so remove the IR from the map after returning it.
      Specified by:
      buildIR in interface IRBuilder
    • buildAll

      public void buildAll(ClassHierarchy hierarchy)
      Description copied from interface: IRBuilder
      Builds IR for all methods in the given hierarchy.
      Specified by:
      buildAll in interface IRBuilder