Class VCChecker

java.lang.Object
liquidjava.processor.refinement_checker.VCChecker

public class VCChecker extends Object
  • Constructor Details

    • VCChecker

      public VCChecker()
  • Method Details

    • processSubtyping

      public void processSubtyping(Predicate expectedType, List<GhostState> list, spoon.reflect.declaration.CtElement element, spoon.reflect.factory.Factory f) throws LJError
      Throws:
      LJError
    • processSubtyping

      public void processSubtyping(Predicate type, Predicate expectedType, List<GhostState> list, spoon.reflect.declaration.CtElement element, spoon.reflect.factory.Factory f) throws LJError
      Check that type is a subtype of expectedType Throws RefinementError otherwise
      Parameters:
      type -
      expectedType -
      list -
      element -
      f -
      Throws:
      LJError
    • smtChecks

      public boolean smtChecks(Predicate expected, Predicate found, spoon.reflect.cu.SourcePosition position) throws LJError
      Checks the expected against the found constraint
      Parameters:
      expected -
      found -
      position -
      Returns:
      true if expected type is subtype of found type, false otherwise
      Throws:
      LJError
    • canProcessSubtyping

      public boolean canProcessSubtyping(Predicate type, Predicate expectedType, List<GhostState> list, spoon.reflect.cu.SourcePosition position, spoon.reflect.factory.Factory f) throws LJError
      Throws:
      LJError
    • addPathVariable

      public void addPathVariable(RefinedVariable rv)
    • removePathVariable

      public void removePathVariable(RefinedVariable rv)
    • throwRefinementError

      protected void throwRefinementError(spoon.reflect.cu.SourcePosition position, Predicate expected, Predicate found) throws RefinementError
      Throws:
      RefinementError
    • throwStateRefinementError

      protected void throwStateRefinementError(spoon.reflect.cu.SourcePosition position, Predicate found, Predicate expected) throws StateRefinementError
      Throws:
      StateRefinementError
    • throwStateConflictError

      protected void throwStateConflictError(spoon.reflect.cu.SourcePosition position, Predicate expected) throws StateConflictError
      Throws:
      StateConflictError