Class TypeChecker
java.lang.Object
spoon.reflect.visitor.CtScanner
liquidjava.processor.refinement_checker.TypeChecker
- All Implemented Interfaces:
spoon.reflect.visitor.CtVisitor
- Direct Known Subclasses:
ExternalRefinementTypeChecker,MethodsFirstChecker,RefinementTypeChecker
public abstract class TypeChecker
extends spoon.reflect.visitor.CtScanner
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidbooleanchecksStateSMT(Predicate prevState, Predicate expectedState, spoon.reflect.cu.SourcePosition p) voidcheckStateSMT(Predicate prevState, Predicate expectedState, spoon.reflect.declaration.CtElement target, String moreInfo) voidcheckVariableRefinements(Predicate refinementFound, String simpleName, spoon.reflect.reference.CtTypeReference<?> type, spoon.reflect.declaration.CtElement usage, spoon.reflect.declaration.CtElement variable) voidcreateError(spoon.reflect.cu.SourcePosition position, Predicate expectedType, Predicate foundType) voidcreateSameStateError(spoon.reflect.cu.SourcePosition position, Predicate expectedType, String klass) protected Optional<GhostFunction> createStateGhost(int order, spoon.reflect.declaration.CtElement element) voidcreateStateMismatchError(spoon.reflect.cu.SourcePosition position, String method, Predicate found, Predicate expected) spoon.reflect.factory.Factoryprotected voidgetGhostFunction(String value, spoon.reflect.declaration.CtElement element) protected StringgetQualifiedClassName(spoon.reflect.declaration.CtElement element) getRefinement(spoon.reflect.declaration.CtElement elem) getRefinementFromAnnotation(spoon.reflect.declaration.CtElement element) protected StringgetSimpleClassName(spoon.reflect.declaration.CtElement element) protected voidhandleAlias(String value, spoon.reflect.declaration.CtElement element) voidhandleStateSetsFromAnnotation(spoon.reflect.declaration.CtElement element) Methods inherited from class spoon.reflect.visitor.CtScanner
enter, exit, scan, scan, scan, scan, scan, scan, scan, visitCtAnnotation, visitCtAnnotationFieldAccess, visitCtAnnotationMethod, visitCtAnnotationType, visitCtAnonymousExecutable, visitCtArrayRead, visitCtArrayTypeReference, visitCtArrayWrite, visitCtAssert, visitCtAssignment, visitCtBinaryOperator, visitCtBlock, visitCtBreak, visitCtCase, visitCtCatch, visitCtCatchVariable, visitCtCatchVariableReference, visitCtClass, visitCtCodeSnippetExpression, visitCtCodeSnippetStatement, visitCtComment, visitCtCompilationUnit, visitCtConditional, visitCtConstructor, visitCtConstructorCall, visitCtContinue, visitCtDo, visitCtEnum, visitCtEnumValue, visitCtExecutableReference, visitCtExecutableReferenceExpression, visitCtField, visitCtFieldRead, visitCtFieldReference, visitCtFieldWrite, visitCtFor, visitCtForEach, visitCtIf, visitCtImport, visitCtInterface, visitCtIntersectionTypeReference, visitCtInvocation, visitCtJavaDoc, visitCtJavaDocTag, visitCtLambda, visitCtLiteral, visitCtLocalVariable, visitCtLocalVariableReference, visitCtMethod, visitCtModule, visitCtModuleReference, visitCtModuleRequirement, visitCtNewArray, visitCtNewClass, visitCtOperatorAssignment, visitCtPackage, visitCtPackageDeclaration, visitCtPackageExport, visitCtPackageReference, visitCtParameter, visitCtParameterReference, visitCtProvidedService, visitCtRecord, visitCtRecordComponent, visitCtReturn, visitCtStatementList, visitCtSuperAccess, visitCtSwitch, visitCtSwitchExpression, visitCtSynchronized, visitCtTextBlock, visitCtThisAccess, visitCtThrow, visitCtTry, visitCtTryWithResource, visitCtTypeAccess, visitCtTypeMemberWildcardImportReference, visitCtTypeParameter, visitCtTypeParameterReference, visitCtTypePattern, visitCtTypeReference, visitCtUnaryOperator, visitCtUnboundVariableReference, visitCtUsedService, visitCtVariableRead, visitCtVariableWrite, visitCtWhile, visitCtWildcardReference, visitCtYieldStatement
-
Constructor Details
-
TypeChecker
-
-
Method Details
-
getContext
-
getFactory
public spoon.reflect.factory.Factory getFactory() -
getRefinement
-
getRefinementFromAnnotation
-
handleStateSetsFromAnnotation
-
getQualifiedClassName
-
getSimpleClassName
-
createStateGhost
protected Optional<GhostFunction> createStateGhost(int order, spoon.reflect.declaration.CtElement element) -
getGhostFunction
-
handleAlias
-
checkVariableRefinements
-
checkSMT
-
checkStateSMT
-
checksStateSMT
-
createError
-
createSameStateError
-
createStateMismatchError
-