core/src/main/java/org/apache/calcite/sql/parser/SqlAbstractParserImpl.java
private @Nullable Object virtualCall(
        @UnderInitialization MetadataImpl this,
        SqlAbstractParserImpl parserImpl,
        String name) throws Throwable {
      Class<?> clazz = parserImpl.getClass();
      try {
        final Method method = clazz.getMethod(name);
        return method.invoke(parserImpl);
      } catch (InvocationTargetException e) {
        Throwable cause = e.getCause();
        throw parserImpl.normalizeException(cause);
      }
    }
/**
     * Uses reflection to invoke a method on this parser. The method must be
     * public and have no parameters.
     *
     * @param parserImpl Parser
     * @param name       Name of method. For example "ReservedFunctionName".
     * @return Result of calling method
     */
Uses reflection to invoke a method on this parser. The method must be
public and have no parameters.

@param parserImpl Parser
@param name       Name of method.
Uses reflection to invoke a method on this parser . The method must be public and have no parameters . @param parserImpl Parser @param name Name of method .
private @Nullable Object virtualCall(
        @UnderInitialization MetadataImpl this,
        SqlAbstractParserImpl parserImpl,
        String name) throws Throwable {
      Class<?> clazz = parserImpl.getClass();
      try {
        final Method method = clazz.getMethod(name);
        return method.invoke(parserImpl);
      } catch (InvocationTargetException e) {
        Throwable cause = e.getCause();
        throw parserImpl.normalizeException(cause);
      }
    }
private @ Nullable Object virtualCall ( @ UnderInitialization MetadataImpl this , SqlAbstractParserImpl parserImpl , String name ) throws Throwable { Class < ? > clazz = parserImpl . getClass ( ) ; try { final Method method = clazz . getMethod ( name ) ; return method . invoke ( parserImpl ) ; } catch ( InvocationTargetException e ) { Throwable cause = e . getCause ( ) ; throw parserImpl . normalizeException ( cause ) ; } }
Uses reflection to invoke a method on this parser.
Uses reflection to invoke a method on this parser .