apply static method
Dynamically call function
with the specified arguments.
Acts the same as dynamically calling function
with
positional arguments corresponding to the elements of positionalArguments
and named arguments corresponding to the elements of namedArguments
.
This includes giving the same errors if function
expects different parameters.
Example:
void printWineDetails(int vintage, {String? country, String? name}) {
print('Name: $name, Country: $country, Vintage: $vintage');
}
void main() {
Function.apply(
printWineDetails, [2018], {#country: 'USA', #name: 'Dominus Estate'});
}
// Output of the example is:
// Name: Dominus Estate, Country: USA, Vintage: 2018
If positionalArguments
is null, it's considered an empty list.
If namedArguments
is omitted or null, it is considered an empty map.
void helloWorld() {
print('Hello world!');
}
void main() {
Function.apply(helloWorld, null);
}
// Output of the example is:
// Hello world!
Implementation
external static apply(
Function function,
List<dynamic>? positionalArguments, [
Map<Symbol, dynamic>? namedArguments,
]);