traits -> has_type, has_member etc.