Top Description Inners Constructors Methods
org.codehaus.groovy.classgen.asm.sc

public abstract Class StaticPropertyAccessHelper

extends Object
Class Inheritance
Imports
org.codehaus.groovy.ast.GroovyCodeVisitor, .MethodNode, org.codehaus.groovy.ast.expr.Expression, .ExpressionTransformer, .MethodCallExpression, org.codehaus.groovy.classgen.AsmClassGenerator, org.codehaus.groovy.transform.sc.ListOfExpressionsExpression, .TemporaryVariableExpression, java.util.Arrays

Facilitates the generation of statically-compiled bytecode for property access.
Since
2.4.0

Nested and Inner Type Summary

Modifier and TypeClass and Description
private static class
private static class

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public static Expression
transformToSetterCall(final Expression receiver, final MethodNode setterMethod, final Expression valueExpression, final boolean implicitThis, final boolean safe, final boolean spreadSafe, final boolean returnValue, final Expression sourceExpression)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

StaticPropertyAccessHelperback to summary
public StaticPropertyAccessHelper()

Method Detail

transformToSetterCallback to summary
public static Expression transformToSetterCall(final Expression receiver, final MethodNode setterMethod, final Expression valueExpression, final boolean implicitThis, final boolean safe, final boolean spreadSafe, final boolean returnValue, final Expression sourceExpression)
org.codehaus.groovy.classgen.asm.sc back to summary

private Class StaticPropertyAccessHelper.PoppingListOfExpressionsExpression

extends ListOfExpressionsExpression
Class Inheritance

Field Summary

Modifier and TypeField and Description
private final StaticPropertyAccessHelper.PoppingMethodCallExpression
private final TemporaryVariableExpression

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public Expression
transformExpression(final ExpressionTransformer transformer)

Overrides org.codehaus.groovy.transform.sc.ListOfExpressionsExpression.transformExpression.

Return a copy of the expression calling the transformer on any nested expressions
public void
Inherited from org.codehaus.groovy.transform.sc.ListOfExpressionsExpression:
addExpression

Field Detail

callback to summary
private final StaticPropertyAccessHelper.PoppingMethodCallExpression call
tmpback to summary
private final TemporaryVariableExpression tmp

Constructor Detail

PoppingListOfExpressionsExpressionback to summary
public PoppingListOfExpressionsExpression(final TemporaryVariableExpression tmp, final StaticPropertyAccessHelper.PoppingMethodCallExpression call)

Method Detail

transformExpressionback to summary
public Expression transformExpression(final ExpressionTransformer transformer)

Overrides org.codehaus.groovy.transform.sc.ListOfExpressionsExpression.transformExpression.

Doc from org.codehaus.groovy.ast.expr.Expression.transformExpression.

Return a copy of the expression calling the transformer on any nested expressions

Annotations
@Override
visitback to summary
public void visit(final GroovyCodeVisitor visitor)

Overrides org.codehaus.groovy.transform.sc.ListOfExpressionsExpression.visit.

Annotations
@Override
org.codehaus.groovy.classgen.asm.sc back to summary

private Class StaticPropertyAccessHelper.PoppingMethodCallExpression

extends MethodCallExpression
Class Inheritance

Field Summary

Modifier and TypeField and Description
private final TemporaryVariableExpression
Inherited from org.codehaus.groovy.ast.expr.MethodCallExpression:
NO_ARGUMENTS

Constructor Summary

AccessConstructor and Description
public
PoppingMethodCallExpression(final Expression receiver, final MethodNode setterMethod, final TemporaryVariableExpression tmp)

Method Summary

Modifier and TypeMethod and Description
public Expression
transformExpression(final ExpressionTransformer transformer)

Overrides org.codehaus.groovy.ast.expr.MethodCallExpression.transformExpression.

Return a copy of the expression calling the transformer on any nested expressions
public void
Inherited from org.codehaus.groovy.ast.expr.MethodCallExpression:
getArgumentsgetGenericsTypesgetMethodgetMethodAsStringgetMethodTargetgetObjectExpressiongetReceivergetTextisImplicitThisisSafeisSpreadSafeisUsingGenericssetArgumentssetGenericsTypessetImplicitThissetMethodsetMethodTargetsetObjectExpressionsetSafesetSourcePositionsetSpreadSafetoString

Field Detail

tmpback to summary
private final TemporaryVariableExpression tmp

Constructor Detail

PoppingMethodCallExpressionback to summary
public PoppingMethodCallExpression(final Expression receiver, final MethodNode setterMethod, final TemporaryVariableExpression tmp)

Method Detail

transformExpressionback to summary
public Expression transformExpression(final ExpressionTransformer transformer)

Overrides org.codehaus.groovy.ast.expr.MethodCallExpression.transformExpression.

Doc from org.codehaus.groovy.ast.expr.Expression.transformExpression.

Return a copy of the expression calling the transformer on any nested expressions

Annotations
@Override
visitback to summary
public void visit(final GroovyCodeVisitor visitor)

Overrides org.codehaus.groovy.ast.expr.MethodCallExpression.visit.

Annotations
@Override