I am writing a method that accepts as its argument a function which also has one argument. Is it possible to access the argument of the passed-in function within the body of the method that receives the function?
Here’s the method’s syntax:
T theMethod(T Function(T inputT) theFunction) {}
The method (theMethod) is meant to return a T.
theMethod accepts as its argument a T function (theFunction) which takes another T as its argument (inputT).
I want to evaluate theFunction conditionally depending on some status of inputT.
I know I could achieve this if I pass in inputT as a separate parameter, but is there any way with the current syntax that I can access the value of inputT within the body of theMethod?
I’ve tried accessing inputT directly, as well as accessing it with dot-notation inside the function and neither of those seem to work.
>Solution :
inputT is not a variable, it’s just a part of the declaration of the type of theFunction. When you call theMethod, there is no way to pass an input to theFunction directly without creating another parameter.