For example, in a directive:
...
scope: {
cb: "&"
}
...
And in the template, passing in a function reference:
<foo cb="cbParent" />
In the directive I would need to call the function cb twice like so $scope.cb()() in order to really execute the function in the parent scope, because it's coming wrapped in another function.
My question is, why does angular wrap the function in another function?