protected DMLStatementNode bindAndTransform(DMLStatementNode stmt){
  try {
    binder.bind(stmt);
    stmt=(DMLStatementNode)booleanNormalizer.normalize(stmt);
    typeComputer.compute(stmt);
    stmt=subqueryFlattener.flatten(stmt);
    if (Boolean.parseBoolean(getProperty("eliminate-distincts","true")))     stmt=distinctEliminator.eliminate(stmt);
    return stmt;
  }
 catch (  StandardException ex) {
    throw new SQLParserInternalException(ex);
  }
}

protected DMLStatementNode bindAndTransform ( DMLStatementNode stmt ) { try { binder . bind ( stmt ) ; stmt = ( DMLStatementNode ) booleanNormalizer . normalize ( stmt ) ; typeComputer . compute ( stmt ) ; stmt = subqueryFlattener . flatten ( stmt ) ; if ( Boolean . parseBoolean ( getProperty ( "eliminate-distincts" , "true" ) ) ) stmt = distinctEliminator . eliminate ( stmt ) ; return stmt ; } catch ( StandardException ex ) { throw new SQLParserInternalException ( ex ) ; } }
apply ast - level transformations before rules .
