code: public static Class<?>[] getParamTypes(Object... arguments)
      {
          Check.notNull(arguments);
  
          final Collection<Object> types = new ArrayList<>(arguments.length);
          for (final Object argument : arguments)
          {
              if (argument.getClass() == Class.class)
              {
                  types.add(argument);
              }
              else
              {
                  types.add(argument.getClass());
              }
          }
          final Class<?>[] typesArray = new Class<?>[types.size()];
          return types.toArray(typesArray);
      }
docs: Get the parameter types as array.
  
  @param arguments The arguments list (must not be <code>null</code>).
  @return The arguments type array.
  @throws LionEngineException If invalid parameters.