in src/main/java/org/apache/commons/ognl/OgnlRuntime.java [578:612]
public static boolean areArgsCompatible( Object[] args, Class<?>[] classes, Method method )
{
boolean result = true;
boolean varArgs = method != null && method.isVarArgs();
if ( args.length != classes.length && !varArgs )
{
result = false;
}
else if ( varArgs )
{
for ( int index = 0; result && ( index < args.length ); ++index )
{
if ( index >= classes.length )
{
break;
}
result = isTypeCompatible( args[index], classes[index] );
if ( !result && classes[index].isArray() )
{
result = isTypeCompatible( args[index], classes[index].getComponentType() );
}
}
}
else
{
for ( int index = 0; result && ( index < args.length ); ++index )
{
result = isTypeCompatible( args[index], classes[index] );
}
}
return result;
}