Function curry(Function function)

Returns a lazily resolved version of function, injecting the arguments passed in to the curried function into the original function by their type.

var curried = curry((Dependency dependency, String string) {
  print('$dependency, $string');
});
curried("Hello!"); // Instance of 'Dependency', Hello!

You can invoke the curried function just like you would the original, but leave out any argument any the container will inject the arguments you don't supply.

var curried = curry((String s, int i, {a, Dependency b, c}) {});
curried("s", 0, a: 0, c: 0); // Named parameter b will be injected

Source

Function curry(Function function);