code: final public ThenExpressionBuilder<T> ifExp() {
      return new ThenExpressionBuilder<T>(new ExpressionHandler<ThenBuilder<T>>() {
        public ThenBuilder<T> handleExpression(final Expression e) {
          return new ThenBuilder<T>(e, new IfStatementHandler<T>() {
            public T handleStatement(IfStatement ifStatement) {
              return statementHandler().handleStatement(ifStatement);
            }
          }, builder);
        }
      });
    }
docs: ifExp().{expression}.thenBlock()
  {statements}
  .elseBlock()
  {statements}
  .endIf()
  @return an expression builder