Package org.codehaus.groovy.classgen

# Interface FinalVariableAnalyzer.VariableNotFinalCallback

Enclosing class:
  FinalVariableAnalyzer

public static interface FinalVariableAnalyzer.VariableNotFinalCallback
Callback interface notified when effectively final analysis detects a problem.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `variableNotAlwaysInitialized(VariableExpression var)`
  Callback used whenever a variable is declared as final, but can remain in an uninitialized state
  `void`
  `variableNotFinal(Variable var, Expression bexp)`
  Callback called whenever an assignment transforms an effectively final variable into a non-final variable (aka, breaks the "final" modifier contract)

- ## Method Details

  - ### variableNotFinal

    void variableNotFinal(Variable var, Expression bexp)
    Callback called whenever an assignment transforms an effectively final variable into a non-final variable (aka, breaks the "final" modifier contract)
    Parameters:
      `var` - the variable detected as not final
      `bexp` - the expression responsible for the contract to be broken

  - ### variableNotAlwaysInitialized

    void variableNotAlwaysInitialized(VariableExpression var)
    Callback used whenever a variable is declared as final, but can remain in an uninitialized state
    Parameters:
      `var` - the variable detected as potentially uninitialized