In this particular case, you want to use the "FilterFilter", which allows you to filer on properties of objects in a list.
<li ng-repeat="user in ctrl.users | filter:{registered: true}">{{user.name}}</li>
Full documentation is at https://docs.angulardart.org/#angular/angular-filter.FilterFilter
Second, if you need a more complicated predicate, the work-around to issue 800 is to make your predicate functions member variables instead of methods on your controller.
e.g.
@NgController()
class Controller {
Function pred = (x) => shouldXByDisplayed(x);
}
(but expect the bug to be fixed soon!)