code: public IfBlock<T, INIT> ElseIf(RFunc0<INIT> init, RFunc1<T, INIT> body) {
                  return ElseIf(init, $(body));
          }
docs: define an ElseIf block.<br>
  
  @param init lambda expression returns an object or boolean value,
  init==null || init.equals(false) will be considered
  <b>false</b> in traditional if expression. in other
  cases, considered true
  @param body takes in INIT value, and return body's return value if
  init is considered true
  @return if body