private boolean isThisOrSuperInStaticContext(Expression objectExpression) { if (controller.isInClosure()) return false; return controller.isStaticContext() && isThisOrSuper(objectExpression); }
if (isThisOrSuper(objectExpression) /*&&
if (isThisOrSuper(objectExpression)) {
public void visitPropertyExpression(PropertyExpression expression) { Expression objectExpression = expression.getObjectExpression(); MethodCallerMultiAdapter adapter; if (leftHandExpression) { adapter = setProperty; if (isGroovyObject(objectExpression)) adapter = setGroovyObjectProperty; if (isStaticContext() && isThisOrSuper(objectExpression)) adapter = setProperty; } else { adapter = getProperty; if (isGroovyObject(objectExpression)) adapter = getGroovyObjectProperty; if (isStaticContext() && isThisOrSuper(objectExpression)) adapter = getProperty; } visitAttributeOrProperty(expression, adapter); }
public void visitPropertyExpression(PropertyExpression expression) { Expression objectExpression = expression.getObjectExpression(); MethodCallerMultiAdapter adapter; if (leftHandExpression) { adapter = setProperty; if (isGroovyObject(objectExpression)) adapter = setGroovyObjectProperty; if (isStaticContext() && isThisOrSuper(objectExpression)) adapter = setProperty; } else { adapter = getProperty; if (isGroovyObject(objectExpression)) adapter = getGroovyObjectProperty; if (isStaticContext() && isThisOrSuper(objectExpression)) adapter = getProperty; } visitAttributeOrProperty(expression, adapter); }
public void visitPropertyExpression(PropertyExpression expression) { Expression objectExpression = expression.getObjectExpression(); MethodCallerMultiAdapter adapter; if (leftHandExpression) { adapter = setProperty; if (isGroovyObject(objectExpression)) adapter = setGroovyObjectProperty; if (isStaticContext() && isThisOrSuper(objectExpression)) adapter = setProperty; } else { adapter = getProperty; if (isGroovyObject(objectExpression)) adapter = getGroovyObjectProperty; if (isStaticContext() && isThisOrSuper(objectExpression)) adapter = getProperty; } visitAttributeOrProperty(expression, adapter); }
public void visitPropertyExpression(PropertyExpression expression) { Expression objectExpression = expression.getObjectExpression(); OperandStack operandStack = controller.getOperandStack(); int mark = operandStack.getStackLength()-1; MethodCallerMultiAdapter adapter; if (controller.getCompileStack().isLHS()) { //operandStack.box(); adapter = setProperty; if (isGroovyObject(objectExpression)) adapter = setGroovyObjectProperty; if (controller.isStaticContext() && isThisOrSuper(objectExpression)) adapter = setProperty; } else { adapter = getProperty; if (isGroovyObject(objectExpression)) adapter = getGroovyObjectProperty; if (controller.isStaticContext() && isThisOrSuper(objectExpression)) adapter = getProperty; } visitAttributeOrProperty(expression, adapter); if (controller.getCompileStack().isLHS()) { // remove surplus values operandStack.remove(operandStack.getStackLength()-mark); } else { controller.getAssertionWriter().record(expression.getProperty()); } }
private void visitAttributeOrProperty(PropertyExpression expression, MethodCallerMultiAdapter adapter) { Expression objectExpression = expression.getObjectExpression(); if (isThisOrSuper(objectExpression)) {
private void visitAttributeOrProperty(PropertyExpression expression, MethodCallerMultiAdapter adapter) { Expression objectExpression = expression.getObjectExpression(); if (isThisOrSuper(objectExpression)) {
private void visitAttributeOrProperty(PropertyExpression expression, MethodCallerMultiAdapter adapter) { Expression objectExpression = expression.getObjectExpression(); if (isThisOrSuper(objectExpression)) {
if (isThisOrSuper(objectExpression)) {