Class TernaryToIfStatementConverter

java.lang.Object
org.codehaus.groovy.transform.tailrec.TernaryToIfStatementConverter

public class TernaryToIfStatementConverter extends Object
Since a ternary statement has more than one exit point tail-recursiveness testing cannot be easily done. Therefore this class translates a ternary statement (or Elvis operator) into the equivalent if-else statement.
  • Constructor Details

    • TernaryToIfStatementConverter

      public TernaryToIfStatementConverter()
  • Method Details

    • convert

      public Statement convert(ReturnStatement statementWithInnerTernaryExpression)
      Rewrites a return statement containing a ternary or Elvis expression into an equivalent if/else statement.
      Parameters:
      statementWithInnerTernaryExpression - the return statement to convert
      Returns:
      the converted statement, or the original statement if no ternary expression is present