Class SandboxTypeCheckingExtension
java.lang.Object
org.codehaus.groovy.transform.stc.TypeCheckingExtension
org.codehaus.groovy.transform.stc.AbstractTypeCheckingExtension
com.evolveum.midpoint.model.common.expression.script.groovy.SandboxTypeCheckingExtension
public class SandboxTypeCheckingExtension
extends org.codehaus.groovy.transform.stc.AbstractTypeCheckingExtension
Inspired by work of Cédric Champeau (http://melix.github.io/blog/2015/03/sandboxing.html)
- Author:
- Radovan Semancik
-
Field Summary
Fields inherited from class org.codehaus.groovy.transform.stc.AbstractTypeCheckingExtension
context, debug, handledFields inherited from class org.codehaus.groovy.transform.stc.TypeCheckingExtension
typeCheckingVisitor -
Constructor Summary
ConstructorsConstructorDescriptionSandboxTypeCheckingExtension(org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor typeCheckingVisitor) -
Method Summary
Modifier and TypeMethodDescriptionbooleanhandleUnresolvedVariableExpression(org.codehaus.groovy.ast.expr.VariableExpression vExp) voidonMethodSelection(org.codehaus.groovy.ast.expr.Expression expression, org.codehaus.groovy.ast.MethodNode target) Methods inherited from class org.codehaus.groovy.transform.stc.AbstractTypeCheckingExtension
argTypeMatches, argTypeMatches, argTypesMatches, argTypesMatches, delegatesTo, delegatesTo, delegatesTo, firstArgTypesMatches, firstArgTypesMatches, getArguments, getCurrentScope, getEnclosingBinaryExpression, getEnclosingBinaryExpressionStack, getEnclosingClassNode, getEnclosingClassNodes, getEnclosingClosure, getEnclosingClosureStack, getEnclosingMethod, getEnclosingMethodCall, getEnclosingMethodCalls, getEnclosingMethods, getGeneratedMethods, isAnnotatedBy, isAnnotatedBy, isDynamic, isExtensionMethod, isGenerated, isMethodCall, log, makeDynamic, makeDynamic, makeDynamic, makeDynamic, makeDynamic, makeDynamic, newMethod, newMethod, newMethod, newScope, newScope, popEnclosingBinaryExpression, popEnclosingClassNode, popEnclosingClosure, popEnclosingMethod, popEnclosingMethodCall, popTemporaryTypeInfo, pushEnclosingBinaryExpression, pushEnclosingClassNode, pushEnclosingClosureExpression, pushEnclosingMethod, pushEnclosingMethodCall, pushTemporaryTypeInfo, safeCall, scopeExit, scopeExit, setHandled, unique, withTypeCheckerMethods inherited from class org.codehaus.groovy.transform.stc.TypeCheckingExtension
addStaticTypeError, afterMethodCall, afterVisitClass, afterVisitMethod, beforeMethodCall, beforeVisitClass, beforeVisitMethod, buildListType, buildMapType, classNodeFor, classNodeFor, existsProperty, existsProperty, extractStaticReceiver, finish, getArgumentTypes, getTargetMethod, getType, handleAmbiguousMethods, handleIncompatibleAssignment, handleIncompatibleReturnType, handleMissingMethod, handleUnresolvedAttribute, handleUnresolvedProperty, isStaticMethodCallOnClass, lookupClassNodeFor, parameterizedType, setup, storeType
-
Constructor Details
-
SandboxTypeCheckingExtension
public SandboxTypeCheckingExtension(org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor typeCheckingVisitor)
-
-
Method Details
-
onMethodSelection
public void onMethodSelection(org.codehaus.groovy.ast.expr.Expression expression, org.codehaus.groovy.ast.MethodNode target) - Overrides:
onMethodSelectionin classorg.codehaus.groovy.transform.stc.TypeCheckingExtension
-
handleUnresolvedVariableExpression
public boolean handleUnresolvedVariableExpression(org.codehaus.groovy.ast.expr.VariableExpression vExp) - Overrides:
handleUnresolvedVariableExpressionin classorg.codehaus.groovy.transform.stc.TypeCheckingExtension
-