Using the call method
This is a hidden gem in Dart. It enables you to give a parameter to an object, thereby invoking the call
method from the object's class.
How to do it...
See its usage in the call
project, as shown in the following code:
var u = "Julia";
void main() {
var embr = new Embrace(5);
The call method can be used in the following ways:
Invoke
call
, as shown in the following code:embr(u); // callable method! var m = new Mult(); print(m(3, 4)); } class Embrace { // see code in recipe: Using reflection
Define the
call
method, as shown in the following code:call(var user) { print("$user is called, and hugged with strength $strength!"); } } class Mult{ call(int a, int b) => a * b; }
We get the following output on the screen:
Julia is called, and hugged with strength 5!
12
How it works...
We pass the value u
to the embr
object in the embr(u)
call, which invokes the call
method. This method defines what the instances of your class do when invoked as functions via the...