Class members with additional predicates?