When multiple directives are applied to an element in AngularJS, what determines the order in which they will be executed?
For instance:
<input ng-change='foo()' data-number-formatter></input>
Which directive, the number formatter or the change event, will be fired first? Is the execution sequence predictable?