code: public static ExpressionEvaluator getInstance(String name) {
          assert DEFAULT_FACTORY != null;
          assert FACTORY_MAP != null;
  
          if(name == null)
              return DEFAULT_FACTORY.getInstance();
          else if(FACTORY_MAP.containsKey(name))
              return ((ExpressionEngineFactory)FACTORY_MAP.get(name)).getInstance();
  
          String msg = "An ExpressionEvaluator named \"" + name + "\" is not available.";
          LOGGER.error(msg);
          throw new IllegalArgumentException(msg);
      }
docs: Get an {@link ExpressionEvaluator} named <code>name</code>.
  
  @param name the name of the {@link ExpressionEvaluator} to obtain.
  @return an {@link ExpressionEvaluator} matching the given name.
  @throws IllegalArgumentException if an {@link ExpressionEvaluator} matching the name is not found