code: public String translate(Coalesce c) {
          final Expression[] alternative = c.getAlternative();
          Expression exp = c.getExp();
          inject(exp);
  
          final String[] alts = new String[alternative.length];
          int i = 0;
          for (Expression e : alternative) {
              inject(e);
              alts[i] = e.translate();
              i++;
          }
  
          return String.format("COALESCE(%s, " + Joiner.on(", ").join(alts) + ")", exp.translate());
      }
docs: Translates {@link Coalesce}.
  
  @param c The object to translate.
  @return The string representation of the given object.