static void checkTypes ( ImmutableList < Type > types , Iterable < ? extends Expression > exprs ) { int size = Iterables . size ( exprs ) ; checkArgument ( size == types . size ( ) , "Supplied the wrong number of parameters. Expected %s, got %s" , types . size ( ) , size ) ; // checkIsAssignableTo is an no-op if DEBUG is false if ( Flags . DEBUG ) { int i = 0 ; for ( Expression expr : exprs ) { expr . checkAssignableTo ( types . get ( i ) , "Parameter %s" , i ) ; i ++ ; } } }
Checks that the given expressions are compatible with the given types .