public  <T> T eval(ELVars vars, String el, Class<T> returnType) throws ELEvalException {
    Utils.checkNotNull(vars, "vars");
    Utils.checkNotNull(el, "expression");
    Utils.checkNotNull(returnType, "returnType");
    VARIABLES_IN_SCOPE_TL.set(vars);
    try {
      return evaluate(vars, el, returnType);
    } finally {
      VARIABLES_IN_SCOPE_TL.set(null);
    }
  }
public < T > T eval ( ELVars vars , String el , Class < T > returnType ) throws ELEvalException { Utils . checkNotNull ( vars , "vars" ) ; Utils . checkNotNull ( el , "expression" ) ; Utils . checkNotNull ( returnType , "returnType" ) ; VARIABLES_IN_SCOPE_TL . set ( vars ) ; try { return evaluate ( vars , el , returnType ) ; } finally { VARIABLES_IN_SCOPE_TL . set ( null ) ; } }
Evaluates an EL.

@param vars the variables to be available for the evaluation.
@param el the EL string to evaluate.
@param returnType the class the EL evaluates to.
@return the evaluated EL as an instance of the specified return type.
@throws ELEvalException if the EL could not be evaluated.